Registry entry
Poland Sole Proprietorship Registration (CEIDG-1, wniosek o wpis przedsiębiorcy do CEIDG)
The Polish CEIDG-1 form, 'Wniosek o wpis do Centralnej Ewidencji i Informacji o Działalności Gospodarczej' (Application for Entry into the Central Registration and Information on Business), through which a natural person registers as a sole trader (jednoosobowa działalność gospodarcza) with CEIDG. A single CEIDG-1 filing simultaneously registers the applicant with ZUS or KRUS (social insurance), GUS (statistics office, which assigns REGON), and the tax office (which assigns NIP if not already held) — CEIDG-1 itself states this ('Wniosek ten stanowi jednocześnie zgłoszenie do ZUS/KRUS, GUS oraz naczelnika urzędu skarbowego'). The live form (current version 1.8.9) is also used, with different required sections, for four other purposes — amending an existing entry, suspending activity, resuming activity, and deregistering — selected via a 'rodzaj wniosku' (application type) radio choice on its cover page. This document models ONLY the first pathway: a brand-new registration (typ 1, 'wniosek o wpis do CEIDG przedsiębiorcy'). See VERIFICATION.md for the full scope note and every field/section deliberately excluded (the other four request types and their type-specific sections; the KRUS-specific declaration block; several bounded but rarely-used continuation annexes referenced by checkbox from the main form). GovSchema is independent and is not affiliated with, endorsed by, or operated by the Government of Poland, CEIDG, or the Ministerstwo Rozwoju i Technologii.
Registry entry
pl/ceidg/wniosek-o-wpis-do-ceidg
Machine access
- Schema document
registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/schema.jsonapplication/schema+json- Verification record
registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/VERIFICATION.mdtext/markdown- Registry catalog
registry/index.jsonone record per schema id
Field reference
81 fields, read from the published schema.json, with names, types, requiredness, and validation as the document states them. The live government form remains the authoritative source.
Fields
-
genderenum requiredThe applicant's sex, one of the form's own two closed options.
enum: kobieta | mezczyznaclassification: sensitive-pii -
identityDocumentTypeenum requiredThe kind of identity document the applicant is registering with.
enum: dowod_osobisty | paszport | inny -
identityDocumentTypeOtherstringFree-text description of the identity document type, required only when identityDocumentType is 'inny' (other).
-
identityDocumentNumberstring requiredThe series and number of the identity document named in identityDocumentType.
classification: sensitive-pii -
peselstring requiredThe applicant's 11-digit PESEL (Powszechny Elektroniczny System Ewidencji Ludności) national identification number. The form's own 'Nie posiadam numeru PESEL' (I do not have a PESEL number) checkbox branch for foreign applicants with no PESEL is out of scope for v1.0.0 — see VERIFICATION.md.
patternclassification: sensitive-pii -
nipstringThe applicant's 10-digit NIP (Numer Identyfikacji Podatkowej) tax identification number, if already held from a prior tax registration. Most first-time applicants leave this blank (the form itself offers a 'Nie posiadam NIP' checkbox) since CEIDG registration is what assigns a NIP.
pattern -
regonstringThe applicant's 9-digit REGON (business statistical number), if already held. Almost always blank for a brand-new registration, since GUS assigns REGON as a consequence of this application, not before it.
pattern -
surnamestring requiredThe applicant's surname, spelled as on the identity document named above.
classification: pii -
firstNamestring requiredThe applicant's first given name.
classification: pii -
maidenSurnamestringThe applicant's maiden/birth surname, if different from the current surname.
classification: pii -
secondFirstNamestringThe applicant's second given name, if they have one.
classification: pii -
fathersFirstNamestring requiredThe first name of the applicant's father.
classification: pii -
mothersFirstNamestring requiredThe first name of the applicant's mother.
classification: pii -
placeOfBirthstring requiredThe applicant's place of birth.
classification: pii -
dateOfBirthdate requiredThe applicant's date of birth (RRRR-MM-DD).
classification: sensitive-pii -
citizenshipenum requiredThe applicant's declared citizenship status: polskie (Polish), brak (holds no citizenship of any country), or inne (another/other citizenship, specified in citizenshipOther). The live form allows naming more than one 'inne' citizenship in free text; this schema models the single free-text value as printed.
enum: polskie | brak | inne -
citizenshipOtherstringFree-text name(s) of the applicant's non-Polish citizenship(s), required only when citizenship is 'inne'.
-
lawfulActivityDeclarationboolean requiredConfirmation of the form's own statutory declaration (CEIDG-1 §03.15): that no final prohibition under art. 5 ust. 2 pkt 13-15 of the CEIDG Act has been ruled against the applicant, that the applicant holds legal title to the properties whose addresses are entered in CEIDG, and that the applicant is aware of the criminal liability (Kodeks karny art. 233 § 6) for a false declaration. See documents[].id 'lawfulActivityAttestation' for the verbatim statement text.
-
residenceCountrystring requiredCountry of the applicant's residential address.
-
residenceVoivodeshipstringVoivodeship (province) of the residential address. Left blank for a non-Polish address.
-
residencePowiatstringPowiat (county) of the residential address. For a city with powiat rights, the instruction guide says to use the city's own name (e.g. 'Poznań', not the adjectival 'poznański'). Left blank for a non-Polish address.
-
residenceGminaOrDistrictstringGmina (municipality) or city district of the residential address. Left blank for a non-Polish address.
-
residenceCitystring requiredCity/town/village of the residential address.
-
residenceStreetstringStreet of the residential address.
-
residenceHouseNumberstring requiredHouse/building number of the residential address.
-
residenceApartmentNumberstringApartment/unit number of the residential address.
-
residencePostalCodestringPostal code of the residential address.
pattern -
residencePostOfficestringPost office name serving the residential address.
-
residenceAtypicalLocationDescriptionstringFree-text description of the residential address, used only when it does not fit the standard street/number scheme (e.g. a rural settlement with no street names).
-
epuapAddressstringThe applicant's electronic delivery address on the ePUAP platform (or the tax portal), used for official electronic correspondence.
-
epuapAddressWaivedbooleanWhether the applicant is withdrawing a previously-declared ePUAP delivery address.
-
businessNamestring requiredThe registered name of the business (firma), which by law must include the entrepreneur's own first and last name.
-
expectedNumberOfWorkersintegerExpected headcount of people working in the business, including the owner, family members registered as collaborating persons, and employees under an employment contract.
range: 0–∞ -
primaryPkdCodestring requiredThe single main/predominant 5-character PKD 2007 (Polska Klasyfikacja Działalności) business-activity code, expected to generate the largest share of revenue. Format: two digits, a dot, two digits, a letter (e.g. 47.11.Z).
pattern -
secondaryPkdCodestringAn additional PKD business-activity code, if the business performs more than one kind of activity.
pattern -
tertiaryPkdCodestringA third PKD business-activity code, if applicable.
pattern -
additionalPkdCodesAnnexAttachedbooleanWhether the applicant is declaring more PKD codes than fit on the main form (up to 9 slots), continued on the separate CEIDG-RD annex form. That annex's own field set is out of scope for v1.0.0 — see VERIFICATION.md and documents[].id 'pkdContinuationAnnex'.
-
shortNamestringA short name for the business (up to 31 characters), used on ZUS correspondence. If left blank, the entrepreneur's own first and last name is used.
-
businessStartDatedate requiredThe declared start date of business activity. May be a past, current, or future date.
-
phoneNumberstringContact phone number.
-
emailAddressstringContact email address.
-
faxNumberstringContact fax number.
-
websiteUrlstringBusiness website address.
-
contactDataSharingOptOutbooleanWhether the applicant is opting out of having the contact details above published in the public CEIDG register.
-
correspondenceAddresseestringName of the addressee for correspondence, if different from the applicant.
-
correspondenceCitystringCity/town/village of the correspondence address.
-
correspondenceStreetstringStreet of the correspondence address.
-
correspondenceHouseNumberstringHouse/building number of the correspondence address.
-
correspondenceApartmentNumberstringApartment/unit number of the correspondence address.
-
correspondencePostalCodestringPostal code of the correspondence address.
-
correspondencePostOfficestringPost office name serving the correspondence address.
-
correspondencePostBoxstringPO box number for correspondence, if used.
-
noFixedBusinessLocationboolean requiredWhether the business has no permanent place of business (e.g. a fully mobile or itinerant activity). When true, the residential address is used for tax purposes instead and the businessLocation* fields below do not apply.
-
businessLocationVoivodeshipstringVoivodeship of the permanent place of business.
-
businessLocationPowiatstringPowiat of the permanent place of business.
-
businessLocationGminaOrDistrictstringGmina or city district of the permanent place of business.
-
businessLocationCitystringCity/town/village of the permanent place of business.
-
businessLocationStreetstringStreet of the permanent place of business.
-
businessLocationHouseNumberstringHouse/building number of the permanent place of business.
-
businessLocationApartmentNumberstringApartment/unit number of the permanent place of business.
-
businessLocationPostalCodestringPostal code of the permanent place of business.
-
businessLocationPostOfficestringPost office name serving the permanent place of business.
-
businessLocationAtypicalDescriptionstringFree-text description of the permanent place of business, used only when it does not fit the standard street/number scheme.
-
mandatoryInsuranceSchemeenum requiredWhich mandatory social-insurance institution the applicant is registering under: zus (Zakład Ubezpieczeń Społecznych), krus (Kasa Rolniczego Ubezpieczenia Społecznego, for farmers), or insured_abroad (already insured in another country). Exactly one applies, per the form's own instruction.
enum: zus | krus | insured_abroad -
zusContributionObligationStartDatedateThe date the applicant's obligation to pay ZUS contributions begins, required when mandatoryInsuranceScheme is 'zus'.
-
currentTaxOfficeNamestringName of the tax office (urząd skarbowy) responsible for the applicant's income-tax settlement — ordinarily the office for the applicant's place of residence.
-
taxationFormenum requiredThe elected personal-income-tax method: general_rules (na zasadach ogólnych, progressive scale), flat_tax (podatek liniowy, 19% flat), lump_sum_revenue (ryczałt od przychodów ewidencjonowanych), or tax_card (karty podatkowej). Note: karta podatkowa (tax_card) has been closed to new elections since the 2022 'Polski Ład' reform and remains on the form only for continuing cases; see VERIFICATION.md.
enum: general_rules | flat_tax | lump_sum_revenue | tax_card -
pit16AttachedbooleanWhether the PIT-16 supplementary form is attached, required when taxationForm is 'tax_card'.
-
accountingBooksNoticeSubmittedbooleanWhether the applicant is filing the optional notice electing to keep full accounting books (księgi rachunkowe) in the next financial year, instead of the simplified records the chosen taxationForm would otherwise imply.
-
shelteredWorkshopStatusbooleanWhether the business holds 'zakład pracy chronionej' (sheltered workshop) status. The instruction guide notes this does not apply to a brand-new registration (status requires ≥12 months of prior trading), so this is expected false for a first-time filing.
-
soleActivityViaCivilPartnershipboolean requiredWhether the applicant conducts business exclusively through one or more civil-law partnerships (spółka cywilna), rather than as an individual sole trader.
-
civilPartnershipNipstringThe NIP of the civil partnership named in soleActivityViaCivilPartnership, required when that flag is true.
pattern -
civilPartnershipRegonstringThe REGON of the civil partnership named above, required when soleActivityViaCivilPartnership is true.
pattern -
maritalPropertyCommunityenum requiredWhether the applicant is in a marital community-property regime with a spouse: tak (yes), nie (no), or nie_dotyczy (not applicable, e.g. unmarried).
enum: tak | nie | nie_dotyczy -
maritalPropertyCeasedDatedateThe date a former marital community-property regime ceased, if applicable.
-
businessBankAccountCountrystringCountry of the bank branch holding the business bank account.
-
businessBankAccountSwiftCodestringSWIFT/BIC code, required only for a foreign bank account (8-11 characters).
pattern -
businessBankAccountBankNamestringFull name of the bank/branch.
-
businessBankAccountHolderstringName of the account holder.
-
businessBankAccountNumberstringThe business bank account number (5-26 characters, e.g. a 26-digit Polish IBAN without the country prefix).
pattern -
businessBankAccountForTaxRefundbooleanWhether this account is nominated to receive tax refunds. A foreign account cannot be nominated for this purpose per the form's own note.
Verification record
This file is the source-review record for this document version, per the manual-source-review-v1 practice. It documents the provenance of the published fields and states the current verification claim honestly.
Current claim
status:draftverification.method:manual-source-review-v1verification.lastVerifiedAt:2026-07-07
This is a GovSchema Standard Research cycle (GOV-1671). Poland opened as the registry's 22nd jurisdiction in the prior cycle (GOV-1666, National ID), with its other five verticals (Passport, DMV, Business Formation, Taxes, Visa) left as open, unscreened backlog. This cycle's brief recommended screening Poland's remaining verticals in order: DMV, then Business Formation (CEIDG sole-trader registration or KRS/S24 company registration), then Taxes, Visa, Passport.
Why this candidate
Candidates screened and rejected
- Poland — DMV (vehicle registration). Screened first, per the brief's recommended order. The national wzór (template) is set by Załącznik nr 1 to Rozporządzenie Ministra Infrastruktury z dnia 8 listopada 2024 r. w sprawie rejestracji i oznaczania pojazdów, wymagań dla tablic rejestracyjnych oraz wzorów innych dokumentów związanych z rejestracją pojazdów (Dz.U. 2024 poz. 1709). The direct government host (
isap.sejm.gov.pl) is Incapsula-bot-gated on a plain fetch, but a third-party mirror of the same gazetted PDF (n-22-4.dcs.redcdn.pl/.../a1ecb0a5-8cb2-47ea-907f-430bba84c320.pdf, hosting a TVN news article's own attached copy of the regulation) served the identical 4-page annex set directly. Parsed withpdfjs-dist: zero AcroForm annotations (a static, hand-fill/print template, like this cycle's other Polish source below), but its own printed body is thin — Załącznik nr 1's civilian-registration wzór has only 7 numbered data items (vehicle type/purpose, make/type/model, year of production, VIN/chassis number, previous registration number, vehicle-card number, EU import date) plus a free-text attached-documents list and an individual number-plate request line; Załącznik nr 2 is a distinct military/foreign -authority variant, not applicable to an ordinary civilian applicant. Not picked: genuine and current, but materially thinner than the Business Formation candidate below on this registry's own bar for field coverage, even though sourcing strength (unauthenticated, no CAPTCHA/WAF once past the Incapsula-gated primary host) is otherwise comparable. Left open as a real, ready-to-author backlog candidate for a future cycle. - Poland — KRS/S24 company registration. Considered as the alternative Business Formation pathway the brief named. Poland's company (spółka) registration for a limited-liability or joint-stock company runs through the S24 online system (
ekrs.ms.gov.pl), an authenticated, session-based web application with standardized-articles templates chosen inside the portal — no static, downloadable, field-level form was found. Not picked in favor of CEIDG-1 (see below), which serves the much larger population of natural persons registering as sole traders and has a genuine, unauthenticated, current PDF source.
Candidate picked: Poland Business Formation — CEIDG-1
CEIDG-1, "Wniosek o wpis do Centralnej Ewidencji i Informacji o Działalności Gospodarczej," is the single form through which a natural person registers a sole proprietorship (jednoosobowa działalność gospodarcza) with Poland's Central Registration and Information on Business. It is directly attached, unauthenticated, to ceidg.gov.pl's own production file server, with no login/CAPTCHA/WAF gate. Unlike the DMV candidate above (also a static, non-AcroForm template), CEIDG-1's own printed layout is fully self-documenting: 30 numbered top-level sections (many with lettered/decimal sub-items, e.g. 06.2, 10.1, 26.1), every one carrying its own plain-Polish field label directly in the PDF's text layer — no coordinate-matching or page-rendering was needed to resolve any field's identity, the same "read the printed reference numbers directly" technique es/aeat/declaracion-censal-personas-fisicas-modelo-030 and es/aeat/declaracion-censal-alta-actividad-economica-modelo-036 used for their own non-AcroForm/generically-named sources. This is the strongest single-pass Business Formation source examined this cycle.
Sources examined
Source 1 (primary source, the form)
- Authority: Centralna Ewidencja i Informacja o Działalności Gospodarczej (CEIDG), operated by the Ministerstwo Rozwoju i Technologii (MRiT).
- Document: CEIDG-1, form version 1.8.9 (printed on every page footer), "Wniosek o wpis do Centralnej Ewidencji i Informacji o Działalności Gospodarczej."
- URL: https://prod.ceidg.gov.pl/CEIDG.CMS.ENGINE/GetFile.aspx?attid=72772898-0108-4620-89c4-edd0ebe18450 (directly retrieved via
curl, HTTP 200, no login; 5 pages, 89,469 bytes). - Retrieved / reviewed: 2026-07-07.
- Extraction method: downloaded directly, then parsed with
pdfjs-dist(legacy/build/pdf.mjs).page.getAnnotations()returned zero AcroForm widgets on all 5 pages — this is a static, print/hand-fill template, not a fillable PDF — sopage.getTextContent()was used instead, reading the form's own printed section numbers (01.–30., with06.1/06.2/10.1/10.2/12.1/12.2/13.x/26.1/26.2/28.xsub-numbering) and every field's own inline label text, in full, across all 5 pages. - What it confirms: all 30 top-level sections and their sub-items' labels and checkbox options verbatim (e.g. the closed
rodzaj wnioskufive-way choice on the cover page; the fouroświadczam... w formietaxation-method checkboxes in §18 including the still-presentkarty podatkowejoption; the12mandatory-insurance three-way choice; the03.15statutory declaration's exact wording, reproduced verbatim in this document'sdocuments[].statement).
Source 2 (corroborating, the official instruction guide)
- Document: "Instrukcja wypełniania wniosku CEIDG-1 [do wersji wniosku 3.1]," dated 2025-01-07 (per its own footer), published by Ministerstwo Rozwoju i Technologii.
- URL: https://pliki.biznes.gov.pl/biznes-pl/20250107/Instrukcja_wypelniania_wniosku_CEIDG-1_stycz25_.pdf (directly retrieved, HTTP 200, no login; 75 pages, 670,799 bytes).
- Retrieved / reviewed: 2026-07-07.
- What it confirms: a full field-by-field explanation for the "A. Wypełnianie wniosku o wpis przedsiębiorcy do CEIDG" (new-registration) pathway this document models, including: the minimum required-section list for a new registration (REGON, identity-document type/number, citizenship, residential address, business name, short name, start date, PESEL, NIP, surname/first name/parents' first names/place-of-birth/date-of-birth, business address); the closed three-option taxation-form list as presented to a new registrant (na zasadach ogólnych / podatek liniowy / ryczałt — confirming
tax_cardis a legacy/continuing-case-only option, disclosed as judgment call 3 below); the closed mandatory-insurance three-way choice (ZUS / KRUS / insured abroad) and which follow-on section each selection requires; the PKD-code rule that only one code may be marked asprzeważający(predominant/primary) and that unlimited additional codes continue onto the CEIDG-RD annex; and the full list of five continuation annexes (CEIDG-RD, CEIDG-MW, CEIDG-RB, CEIDG-SC, CEIDG-PN) plus two process-specific annexes (CEIDG-ZS, CEIDG-POPR) not relevant to a new-registration filing. Version-numbering note: this instruction guide's own section numbers (unprefixed1., 2., 5.1, 6., 7., 9., 9.1, 9.2, 10., 14....) do not match the downloaded form's zero-padded numbering (03., 04., 06.1, 06.2, 09., 10.1, 10.2, 12., 12.1, 12.2, 17....), meaning the guide targets a slightly earlier form revision than the "1.8.9"-stamped PDF this document is sourced from. This was checked field-by-field rather than assumed harmless: every field the guide names by label (Płeć, Nazwisko, Imię, Imię ojca, Imię matki, Miejsce urodzenia, PESEL, Data urodzenia, NIP, REGON, Rodzaj dokumentu tożsamości, Seria i numer dokumentu tożsamości, Posiadane obywatelstwa, Adres zamieszkania, Nazwa firmy, Nazwa skrócona, Data rozpoczęcia działalności, Przewidywana liczba pracujących, Przeważający kod PKD, Adres do doręczeń, Stałe miejsce wykonywania działalności, obowiązkowe ubezpieczenie, Urząd skarbowy) is present with the same meaning and the same required/optional status in the downloaded PDF's own §03/§04/§06/§08/§09/§10.1/§10.2/§12/§17 — no substantive content drift found, only a renumbering.
Field inventory (Phase 2)
All 81 fields[] entries and both documents[] entries, and their exact CEIDG-1 section reference, are listed inline in schema.json's own sourceRef per field/document. Summary by section:
| Section | Representative fields | Required for this v1.0.0? | |---|---|---| | §03 Dane wnioskodawcy | gender, identityDocumentType(Other), identityDocumentNumber, pesel, nip, regon, surname, firstName, maidenSurname, secondFirstName, fathersFirstName, mothersFirstName, placeOfBirth, dateOfBirth, citizenship(Other), lawfulActivityDeclaration | Mostly required — see judgment call 1 (nip/regon left optional) | | §04 Adres zamieszkania | residenceCountry...residenceAtypicalLocationDescription (11 fields) | Country/city/house number required; the rest optional per the source's own layout | | §05 ePUAP | epuapAddress, epuapAddressWaived | Both optional | | §06–08 Dane firmy | businessName, expectedNumberOfWorkers, primaryPkdCode(+secondary/tertiary), additionalPkdCodesAnnexAttached, shortName, businessStartDate | businessName, primaryPkdCode, businessStartDate required (see judgment call 2 for the PKD-slot count) | | §09 Dane do kontaktu | phoneNumber...contactDataSharingOptOut (5 fields) | All optional | | §10.1 Adres do doręczeń | correspondenceAddressee...correspondencePostBox (8 fields) | All optional (see judgment call 4 for the dropped country/voivodeship/powiat/gmina sub-fields) | | §10.2 Stałe miejsce wykonywania działalności | noFixedBusinessLocation + 10 address fields | noFixedBusinessLocation required; businessLocationCity requiredWhen it is false | | §12 Ubezpieczenie | mandatoryInsuranceScheme, zusContributionObligationStartDate | mandatoryInsuranceScheme required; the date requiredWhen scheme is zus | | §17–19 Podatki i księgowość | currentTaxOfficeName, taxationForm, pit16Attached, accountingBooksNoticeSubmitted | taxationForm required; pit16Attached requiredWhen it is tax_card | | §22–24 Zakład pracy chronionej / spółka cywilna | shelteredWorkshopStatus, soleActivityViaCivilPartnership, civilPartnershipNip/Regon | soleActivityViaCivilPartnership required; the NIP/REGON pair requiredWhen it is true | | §25 Wspólność majątkowa | maritalPropertyCommunity, maritalPropertyCeasedDate | The enum is required; the date is optional | | §26.1 Rachunek bankowy | businessBankAccountCountry...businessBankAccountForTaxRefund (6 fields) | All optional | | §03.15 / §29 declaration & annex pointer | documents[].lawfulActivityAttestation, documents[].pkdContinuationAnnex | Attestation required; annex requiredWhen additionalPkdCodesAnnexAttached |
Total: 81 fields plus 2 documents[] entries. No crossFieldValidation rules or exclusivityGroups are modelled: every conditional relationship found is a simple two-value requiredWhen gate against a field this schema also defines as required: true (so its value is always present in valid data — see judgment call 5 on why this direction was chosen throughout).
Access notes and judgment calls
nipandregonare modelled as plain optional strings, dropping the form's own "Nie posiadam NIP"/"Nie posiadam numeru REGON" negative checkboxes entirely, rather than as arequiredWhen-gated pair (unlikepesel, which is modelledrequired: trueoutright, dropping its analogous "Nie posiadam numeru PESEL" branch — the same simplificationpl/mswia/wniosek-o-wydanie-dowodu-osobistegomade for its own foreign -applicant edge case). Reasoning: for a brand-new registration, NIP is typically not yet held (CEIDG-1 itself is what causes one to be assigned, per the instruction guide's own "Na podstawie wniosku CEIDG-1, uzyskasz numer NIP i REGON" statement) and REGON is assigned by GUS as a consequence of this same filing — so leaving both optional, with no forced negative-declaration field, models the common case accurately without fabricating arequiredWhengate on a checkbox this cycle chose not to carry as its own field. A rare foreigner-without-PESEL applicant pathway remains out of scope for v1.0.0.- PKD business-activity codes are modelled as three flat slots (
primaryPkdCode,secondaryPkdCode,tertiaryPkdCode) plus a boolean annex pointer, not the form's own 9 numbered slots or its "no limit on the number of codes" rule. GovSchema v0.3 has no repeating/array field type (GSP-0009, not yet folded into this spec line), so per this registry's established convention for small bounded repeating structures (e.g.sg/acra/sole-proprietorship-registration's ownprimarySsicCode/secondarySsicCodepair), this document models the one mandatoryprzeważający(predominant) code plus a small, useful number of additional codes, and represents "more codes than fit" viaadditionalPkdCodesAnnexAttachedand the matchingdocuments[].pkdContinuationAnnexentry rather than fabricating an array type the spec does not have. taxationForm's enum keeps all four checkbox options printed on the live form (general_rules/flat_tax/lump_sum_revenue/tax_card), even though the corroborating instruction guide's own new-registration walkthrough (§A "Wypełnianie wniosku o wpis przedsiębiorcy do CEIDG") lists only the first three as available choices for a first-time filer.karta podatkowa(tax card) was closed to new elections by the 2022 "Polski Ład" tax reform and remains selectable on CEIDG-1 only for already-enrolled taxpayers filing a different request type (change/ continuation) — this document keeps the literal, currently-printed enum (since the checkbox and itspit16Attachedcompanion field are still physically present on the version-1.8.9 form examined this cycle) and discloses the practical new-registration restriction here in prose rather than either fabricating a narrower enum the form itself does not enforce structurally, or silently dropping a real option.- The correspondence address (§10.1) and permanent-place-of-business address (§10.2) blocks omit their own
Kraj/Województwo/Powiat/Gmina-Dzielnicasub-fields (kept only for the residential address in §04), following the same reduced-address-block conventionpl/mswia/wniosek-o-wydanie-dowodu-osobistegoused for its own correspondence-address fields (5 sub-fields, not the full 11-field residential-address shape). Disclosed as a scope trim for schema-size management, not a source-fidelity gap — every dropped sub-field is documented on the live form and would be a natural MINOR addition to a future version. - Every
requiredWhengate in this document targets a field this same schema defines asrequired: true(identityDocumentType,citizenship,noFixedBusinessLocation,mandatoryInsuranceScheme,taxationForm,soleActivityViaCivilPartnership) — never an optional/possibly-absent field. This is a deliberate design choice to avoid the absent-field-ambiguity class of bug this registry has previously hit (notEquals/equalsgates against a field that might simply not be present in submitted data, as documented in this project's own internal notes on thenotEquals ""-against-an-absent-optional-field pattern). Concretely, this is whynoPesel/noNip/noRegon-style negative checkboxes were dropped entirely (judgment call 1) rather than kept as optional gating flags, and whynoFixedBusinessLocation— which the live form presents as an ordinary unforced checkbox — is instead modelled here asrequired: true: an applicant must explicitly answertrue/false, sobusinessLocationCity'srequiredWhen: {equals: false}gate always evaluates against a real, present boolean value in any conformant dataset. - §13 (KRUS-specific declarations, five sub-items about a farmer's prior agricultural-insurance history), §14–16 (suspension/resumption/ cessation-of-activity blocks), §20–21 (external-accounting-firm details and the accounting-records storage address), §26.2 (a second, personal bank account), §27 (foreign tax/insurance identification numbers), and §28.x (power-of-attorney details) are all out of scope for v1.0.0. §14–16 apply only to the change/suspend/resume/deregister request types this document deliberately excludes (see the title/description's own scope statement); §13, §20–21, §26.2, §27, and §28.x are all real but comparatively rare optional blocks on a first-time registration, each a natural candidate for a future MINOR revision.
- No repeating/array field type (GSP-0009). Not modelled anywhere in this document beyond the PKD-code trim already discussed in judgment call 2 — the additional-business-location continuation (§11.x, its own CEIDG-MW annex), the multiple-civil-partnership continuation (its own CEIDG-SC annex), the multiple-power-of-attorney continuation (its own CEIDG-PN annex), and the multiple-bank-account continuation (its own CEIDG-RB annex) are each genuinely unbounded repeating structures this registry has consistently deferred pending GSP-0009 (see e.g.
mx/sat/preinscripcion-rfc-persona-moral's own deferred repeating addresses/activities). - PKD code fields use the pattern
^[0-9]{2}\.[0-9]{2}\.[A-Z]$(e.g.47.11.Z), confirmed against both the form's own "symbol (5-znakowy) wg PKD 2007" label and the instruction guide's "(5 znaków)" callout — dot-separated 2-digit/2-digit/letter, not five bare characters.
Test run (Phase 3)
No live submission was attempted: CEIDG-1's paper-filing channel requires an in-person visit or a notarized signature, and its electronic-filing channel (via biznes.gov.pl/CEIDG) requires a real Polish trusted profile (profil zaufany) or qualified electronic signature — submitting fabricated applicant data against Poland's live business register is not a safe or reversible action.
Instead, one fully hand-constructed mock record was built from this document's own field inventory and validated with a purpose-written script (not just eyeballed) that re-implements spec v0.3's type/validation/ required/requiredWhen/documents[] semantics directly from schema.json and checks the packet against them field-by-field; it is committed as this document's conformance fixture (conformance/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/application-packet.json).
Scenario (committed fixture) — an adult Polish resident registering her first sole-proprietorship graphic-design business. gender: "kobieta", identityDocumentType: "dowod_osobisty" (so identityDocumentTypeOther is correctly omitted), pesel: "85051512345" (11 digits), surname: "Kowalska", firstName: "Anna", citizenship: "polskie" (so citizenshipOther is correctly omitted), lawfulActivityDeclaration: true, a full residential address in Warsaw, businessName: "Anna Kowalska Projektowanie Graficzne", primaryPkdCode: "74.10.Z" (specialised design activities — a real, correctly-formatted PKD code) with a secondaryPkdCode also supplied, businessStartDate: "2026-08-01", a distinct correspondence address, noFixedBusinessLocation: false (so businessLocationCity is correctly required and supplied), mandatoryInsuranceScheme: "zus" (so zusContributionObligationStartDate is correctly required and supplied), taxationForm: "general_rules" (so pit16Attached is correctly not required/omitted), soleActivityViaCivilPartnership: false (so the civil -partnership NIP/REGON pair is correctly omitted), maritalPropertyCommunity: "tak", a business bank account, and documents.lawfulActivityAttestation: true.
The validation script (/tmp scratch file, reproduced in full below for reviewer re-runnability) was run against the committed packet:
`` $ node validate_packet.mjs registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/schema.json \ conformance/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/application-packet.json OK: packet validates against pl/ceidg/wniosek-o-wpis-do-ceidg@1.0.0 (81 fields, 2 documents) ``
Negative controls, run against the same script to confirm it actually catches violations rather than passing vacuously:
``` $ # pesel shortened to "123" — violates the 11-digit pattern FAIL (1 error(s)): - field pesel: value "123" does not match pattern ^[0-9]{11}$
$ # businessName removed — violates required: true FAIL (1 error(s)): - field businessName: required (or requiredWhen matched) but absent from packet
$ # noFixedBusinessLocation flipped to true, businessLocationCity removed OK: packet validates against pl/ceidg/wniosek-o-wpis-do-ceidg@1.0.0 (81 fields, 2 documents) ```
The third control confirms the requiredWhen gate behaves correctly in both directions: businessLocationCity is required when noFixedBusinessLocation is false (as in the main fixture) and correctly not required when it is true.
Both meta-schema validators were run against the finished document and pass clean:
``` $ node tools/validate.mjs registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/schema.json ok registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/schema.json
1/1 document(s) passed.
$ node tools/validate-ajv.mjs registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/schema.json ok registry/pl/ceidg/wniosek-o-wpis-do-ceidg/1.0.0/schema.json [v0.3]
1/1 document(s) validated against the meta-schema (ajv 2020-12). ```
View the raw record (VERIFICATION.md)
Version history
-
1.0.0draftlatestthis pagehas verification recordschema.json
Independent and non-affiliated
GovSchema is an independent, open-source project. This reference is not produced, reviewed, or endorsed by Centralna Ewidencja i Informacja o Działalności Gospodarczej or any government. The authoritative source is always the live government form and its official instructions.