Start here
This guide contains public integration notes for Poland. Use it for identifier formats, search behavior, and country-specific caveats. The live source of truth for coverage, pricing, data sources, documents, legal forms, roles, and status values is the pricing page.Poland coverage, pricing, and sources
Open the current catalog for supported datapoints, documents, sources, identifiers, and availability.
Country details below are preserved as integration notes. If a table or example conflicts with the live pricing page, use the pricing page as the source of truth and contact support.
Data Sources
Poland uses a hybrid approach across three registers, routing company lookups based on entity type. For a given entity, data comes from a single source determined by the registration prefix and by which register actually holds the entity.KRS companies (legal entities)
- KRS (Krajowy Rejestr Sadowy / National Court Register). Operated by the Ministry of Justice, the KRS is the primary source for all legal entities: limited liability companies (sp. z o.o.), joint-stock companies (S.A.), partnerships, associations, foundations, cooperatives, and other registered entities. Provides company name, legal form, status, address, capital, activity codes (PKD), management board members, procurators, and shareholders (sp. z o.o. only).
- CRBR (Centralny Rejestr Beneficjentow Rzeczywistych / Central Register of Beneficial Owners). Poland’s official UBO registry, mandatory for all entities registered in KRS. Provides ultimate beneficial owner data including ownership percentages, control types (direct/indirect), and management positions. Accessed programmatically.
- eKRS Financial Documents Portal (ekrs.ms.gov.pl). Official portal for financial documents filed by KRS companies. Provides annual financial statements, consolidated statements, management reports, auditor opinions, and approval resolutions. Documents may be in XML format (automatically converted to PDF).
CEIDG sole proprietors (individual businesses)
- biznes.gov.pl API. Government API for the Central Register and Information on Business Activity (CEIDG). Used for search across both registers (KRS + CEIDG) and as the sole data source for sole proprietors. Provides company name, owner name, address, PKD activity codes, status, and basic contact information.
Entities in neither register
- REGON (Krajowy rejestr urzedowy podmiotow gospodarki narodowej / National Official Business Register). The statistical register maintained by Statistics Poland (GUS), queried through its BIR1.2 API. Entry is compulsory for every entity in the national economy, so REGON is the only Polish register covering entities that appear in neither KRS nor CEIDG — civil-law partnerships (
spolka cywilna) above all, plus housing communities, foreign representative offices, schools and public-administration bodies. Provides legal name, short name, legal form, registered seat, PKD activity codes, registration and closure dates, and a phone number where the entity declared one. REGON is used only when KRS and CEIDG both return nothing: for anything either of them holds, they are the richer source.
VAT validation
- VIES (EU VAT Information Exchange System). In verification mode, the Polish VAT number (PL + NIP) is validated against VIES, with a qualified consultation number when the entity is VAT-registered.
Three registers, one entity model: KRS covers legal entities (companies, non-profits, cooperatives), CEIDG covers sole proprietors, and REGON covers everything — including the entities the other two structurally cannot hold. Our system uses prefixed identifiers (
krs- / nip-) to route requests, and falls back to REGON when neither entrepreneur register recognises the identifier.How does the API choose between KRS and CEIDG?
How does the API choose between KRS and CEIDG?
krs-{number}prefix: Routes to the KRS API. Used for all legal entities registered in the National Court Register (companies, associations, foundations, cooperatives).nip-{number}prefix: Routes to the biznes.gov.pl API. Used for sole proprietors registered in CEIDG.
How is a spolka cywilna (civil-law partnership) handled?
How is a spolka cywilna (civil-law partnership) handled?
A
spolka cywilna is not a separate legal entity under Polish law, so it is registered in neither KRS nor CEIDG — but it does hold its own NIP and REGON, and it is entered in the REGON register with its own name, legal form, seat and PKD codes.- Search by the partnership’s NIP or REGON returns the partnership itself, from REGON. It also returns the individual partners, resolved from their CEIDG entries, with
matchType: partialId— those results describe the partners, not the partnership. - Company lookups using the partnership’s
nip-identifier return its identity from REGON. - Liability sits with the partners, so a
spolka cywilnahas no share capital and no representatives of its own to return.
Company Identifiers
company.identifiers.euid is an optional European Unique Identifier. Domestic sp. z o.o. and S.A. companies with a KRS number. Example: PLKRS.0000028860. It is returned as an output identifier and cannot be used as a search input. See EUID coverage and interpretation.
Query Identifiers
Identifiers in API Response
Once you retrieve company data, theidentifiers object contains all available identifiers for that entity:
Legal Entity Identifier (LEI)
GLEIF is the supplementary data source for this identifier.company.identifiers.lei is optional. It is returned when the KRS number (krs) matches exactly one LEI through a GLEIF registration or validation reference.
The Legal Entity Identifier has 20 uppercase alphanumeric characters, ending in two check digits.
Coverage varies by entity. An absent lei does not prove that the company has no LEI. Lapsed, retired or merged LEIs may be returned; annulled LEIs are excluded.
Search Capabilities
Search queries multiple sources in parallel. For identifier searches, the system queries KRS by KRS number, KRS by NIP, KRS by REGON, CEIDG by NIP, CEIDG by REGON, and the REGON statistical register simultaneously. Results are deduplicated by ID, with KRS results taking precedence over CEIDG when both match. REGON results are used only when no other register recognises the identifier, so an ordinary company is never returned twice.
A NIP or REGON can return several companies. Only the KRS number identifies exactly one entity. When a business reorganises through successive legal entities it keeps its tax (NIP) and statistical (REGON) numbers, so those can be shared across several KRS entries — typically one active company plus one or more struck-off predecessors. Searching NIP
7622006714 or REGON 38186693900000, for example, returns three companies.Those results carry matchType: partialId rather than id, and each one has its own id (krs-…). Always pass the id from the search result to /v2/company, never the NIP or REGON, and retrieve the company data to establish which entity is current — search results do not carry company status.Active companies only
Search can return companies that are no longer active.activeOnly=true removes those whose status is known at search time; the others are kept. Sole traders are filtered by their register status. Companies in the court register are returned whatever their status, because search does not report it.
Company Status
Company status is determined from KRS register data and enhanced with AI mapping. CEIDG (sole proprietor) statuses use a separate mapping path.KRS Companies (primary path)
Status is derived from multiple KRS data points: deletion indicators, bankruptcy proceedings, merger records, and name-based liquidation detection.
Closure reasons (when status is Closed or Under Insolvency Proceeding):
Prefill mode uses a lighter, deterministic mapping. It reads the register’s entity record instead of the full extract, with no AI step. A struck-off company returns
WYKREŚLONY with closure reason Liquidation, a suspended company returns DZIAŁALNOŚĆ ZAWIESZONA, and any other company returns AKTYWNY. Verification mode uses the same mapping for a struck-off company whose current extract the register no longer issues.CEIDG Sole Proprietors
Closure Date Priority
The system prioritizes closure dates in the following order:- Deletion finalization date in the KRS extract header (highest priority)
- Register deletion dates from the KRS deletion records
- Bankruptcy completion date
- CEIDG cancellation/cessation dates (for sole proprietors)
In verification mode, KRS status classification is AI-enhanced. The local Polish status name from KRS is always preserved verbatim. The AI analyzes the status in context to provide standardized mapping. Deterministic rules (deletion, bankruptcy, liquidation) take precedence before AI enrichment.
Legal Forms
Poland ships a closed enum of 102 legal forms sourced directly from the Polish registers: 51 forms the KRS returns, one canonical entry for CEIDG sole traders, and 50 forms from the REGON statistical register for entities held in neither KRS nor CEIDG. There is no AI fallback: an unknown value is rejected withinvalid at ingestion time so the enum stays accurate and any new form the register introduces surfaces as a deploy blocker.
Provenance:
- KRS values were harvested from the full July 2024 snapshot of the Krajowy Rejestr Sadowy (849,757 entities across the commercial register RejP and the association register RejS). The top 13 forms cover 99.7% of the register and the full set is 50 distinct strings. A 51st form, the branch of a foreign entrepreneur, was added in July 2026 after live register responses returned it.
- CEIDG sole traders are projected onto a single canonical entry (
Osoba fizyczna prowadząca działalność gospodarczą), because the biznes.gov.pl API does not expose aformaPrawnafield for CEIDG entries (a sole trader has no entity-level legal form under Polish law). - REGON values come from the closed
szczególna forma prawnadictionary published by Statistics Poland (GUS). Only the forms that KRS and CEIDG do not already cover are added, chiefly entities registered only in REGON: civil-law partnerships, housing communities, foreign representative offices, schools and public-administration bodies. - ISO 20275 (ELF) codes are attached as a cross-reference where GLEIF publishes one. Out of the 102 entries, 44 have an ELF code: 43 of the 51 KRS forms and the CEIDG entry. None of the REGON-only forms has one. GLEIF is not the source of the enum; the register is. We attach ELF codes opportunistically for LEI matching and nothing more.
GLEIF’s ISO 20275 list for Poland is incomplete and is not a safe source of truth. 8 of the 51 KRS forms have no ELF code at all (for example the granular
stowarzyszenie subtypes, public-benefit organizations without a church link, and branches of foreign entrepreneurs). This is why the enum is built from the register itself, not from ISO 20275.Core commercial forms
Cooperatives and mutuals
State and public-sector entities
Associations and foundations
Trade unions and employer associations
Guilds, chambers, and business organizations
Agricultural and transport associations
Sports bodies
Public-benefit organizations and church entities
Foreign branches (KRS)
Sole traders (CEIDG)
Entities registered only in REGON
These forms have no ISO 20275 code.Legal Representatives
For KRS entities,legalRepresentatives covers the management board and the procurators only. Supervisory board members are not included. Known Polish role labels use the published translations and standardized values. Extraction and ISO 5009 matching may still use AI. Joint or sole signing follows the representation rule in the extract.
Board member and shareholder names: use verification mode. Poland’s National Court Register masks personal data on its online lookup, returning names like
W***** L********. Topograph reads the full names from the official court extract instead, so in verification mode legalRepresentatives and shareholders come back with complete first names and surnames for companies, associations, and foundations. The names are read from the court extract by AI, so verify against the source document before relying on them for compliance.Details for the response payload:- Prefill mode returns only the company identity fields (name, legal form, registered seat, status, dates). It does not include board members or shareholders, and for companies in the National Court Register it does not include share capital or activity codes either. Use verification mode (the default) when you need them.
legalRepresentatives[].individual.name.firstNameandlastNameare full and unredacted in verification mode.legalRepresentatives[].individual.birthDateandgenderare not currently populated for Polish entities.shareholdersare listed for limited liability companies (sp. z o.o.) where the register publishes them, with full names.- The role (
localNameandstandardized), structural fields, addresses, capital, and dates are all complete.
KRS Management Board Roles
Management Board Roles (Zarzad)
Management Board Roles (Zarzad)
Procurator Roles (Prokura)
Procurator Roles (Prokura)
CEIDG Owner Role
CEIDG Owner Role
PESEL, Birth Date and Gender
The PESEL (Polish Personal Identification Number) of KRS management board members and procurators is sensitive personal data and is not part of the response.birthDate and gender are not currently populated for Polish legal representatives. Full names are returned in verification mode (see the note above).
Procurators (authorized signatories) from KRS are mapped as additional legal representatives with the original Polish prokura label and standardized as
Authorized Signatory. For CEIDG sole proprietors, the entrepreneur is automatically mapped as the sole legal representative with role “Wlasciciel” (Owner).Other Key Persons
Other key persons are not currently extracted from Polish registries. All management board members and procurators are mapped as legal representatives.Shareholders
Shareholders are available for sp. z o.o. (Limited Liability Companies) in verification mode. They are read by AI from the shareholders section (“Wspólnicy”) of the official KRS court extract, with full names for individuals and, for corporate shareholders, the company name and its Polish identifiers (KRS, NIP, REGON) when shown. Verify against the source document before relying on them for compliance. The court extract lists the number and value of shares each shareholder holds, not a percentage. When two or more shareholders are listed and every one of them has a share count,sharePercentage is derived in proportion to those counts. The register only lists shareholders holding at least 10% of the share capital, so a derived percentage is relative to the listed shareholders.
Limitations
For corporate shareholders, Polish identifiers (KRS, NIP, REGON) are included when available. Foreign corporate shareholders without Polish identifiers are included with name only. KRS publishes share counts, not percentages; a percentage is only derived from the counts as described above.
Ultimate Beneficial Owners
UBO data is sourced from CRBR (Centralny Rejestr Beneficjentów Rzeczywistych), the Polish Central Register of Beneficial Owners operated by the Ministry of Finance. CRBR is a separate register from KRS, established under Polish AML law (transposing 4AMLD/5AMLD), and it is mandatory for almost every entity registered in KRS to disclose its beneficial owners there. A beneficial owner in CRBR is the natural person who ultimately owns or controls the entity, defined by the Polish AML act as direct or indirect ownership above 25%, or any other form of effective control. Where no natural person meets that threshold (typical for state-owned entities, listed companies, and complex structures), CRBR records senior managing officials as a fallback per the AML directive.CRBR is not redacted. Unlike the KRS online lookup, CRBR returns full first names, surnames, birth dates, nationalities, and a description of how control is exercised. The redaction policy the Ministry of Justice applies to KRS does not apply to CRBR, because the whole point of CRBR is to expose this data for AML and KYC compliance.
CRBR returns no UBOs for entities that are exempt from disclosure (state-owned enterprises, the State Treasury, certain public-benefit organizations) or for entities whose ownership chain resolves to a listed parent. In those cases the response contains an empty
ultimateBeneficialOwners array, which is correct, not a gap.
UBO data is fetched on demand: include ultimateBeneficialOwners in the dataPoints array on POST /v2/company. The UBO extract document returns the full CRBR PDF excerpt for filing in compliance dossiers.
Activity Code Mapping
Poland uses PKD (Polska Klasyfikacja Dzialalnosci). The registers publish national codes underPKD in the source format (62.01.Z, division.class.subclass). PKD 2007 and PKD 2025 coexist during the official transition through 2026. The implemented KRS and REGON activity rows do not stamp the edition, so their codes are retained without a revision suffix or an assumed NACE conversion.
The KRS provides both the main activity and secondary activities. CEIDG provides a primary PKD code and additional codes. REGON marks one code as the prevailing activity (dzialalnosc przewazajaca) as well.
All three registers declare a prevailing activity, and it is always listed first. The PKD code the register declares as prevailing carries
isMainActivity: true. Codes without the flag are not necessarily secondary: the flag is only set when the register explicitly declares the main activity.
AI Enrichment: Every activity item includes an
isAIInferred flag. PKD codes are never AI-inferred for Poland. For CEIDG sole proprietors, ISIC codes are matched from the PKD codes by an LLM and NACE is derived from them, so those items can carry isAIInferred: true.Activity Codes by Source
Data Availability Matrix
Legend: Yes = Available | No = Not Available | Async = Asynchronous processing
Documents by Company Type
KRS Companies (prefix: krs-)
CEIDG Sole Proprietors (prefix: nip-)
Financial Document Types
Available financial document types from the eKRS portal include the following. Annual and consolidated annual financial statements are returned underfinancialStatements[]; every other filing is returned under otherDocuments[].
- Roczne sprawozdanie finansowe — Annual Financial Statements
- Skonsolidowane roczne sprawozdanie finansowe — Consolidated Annual Financial Statements
- Sprawozdanie z dzialalnosci — Management Reports
- Opinia bieglego rewidenta — Auditor’s Opinions
- Uchwaly o zatwierdzeniu sprawozdan — Approval Resolutions
- Uchwaly o podziale zysku — Profit Distribution Resolutions
Automatic XML-to-PDF Conversion: Financial documents in Poland are often published in XML format using the Ministry of Finance schema. We automatically convert these XML files to human-readable PDF format using the official Polish government visualization tool at e-sprawozdania.mf.gov.pl. Both the original XML and the converted PDF are stored and accessible. If conversion fails, the original XML file is still returned.
Example API Responses
All examples use placeholder data. Query:POST /v2/company with { "id": "<id>", "countryCode": "PL", "dataPoints": ["company", "legalRepresentatives"] }
Closed KRS Company (Dissolved)
Closed KRS Company (Dissolved)
CEIDG Sole Proprietor
CEIDG Sole Proprietor
UBO Response (dedicated datapoint)
UBO Response (dedicated datapoint)
Query with Note: UBO records are unredacted and verified live. CRBR is operated by the Polish Ministry of Finance, not by the Ministry of Justice that runs KRS, and the redaction policy on KRS does not apply here.
Note: UBOs are fetched from the CRBR (Central Register of Beneficial Owners). Three forms of control are recognized: (1) direct ownership of shares or assets (
"dataPoints": ["ultimateBeneficialOwners"]:ownership-of-shares, nature direct), (2) indirect control through a controlling entity (significant-influence-or-control, nature indirect), and (3) a senior management position under AML law (significant-influence-or-control, nature direct). Ownership is expressed either as a percentage or as a monetary amount in PLN.Available Documents (KRS Company)
Available Documents (KRS Company)
Documents are returned when
"dataPoints": ["availableDocuments"] is requested.For active KRS companies:For inactive KRS companies:
For CEIDG entities: