Poland KRS Financial Statements API
Annual financial statements and filings from the National Court Register. You get clean, structured records with the source registry attached - keyed off the KRS identifier.
- →Structured JSON, not HTML or PDFs
- →Source registry attached to every record
- →Read live at query time - current filings
- →Queried by KRS or company name
What each KRS (financials) record contains
| Field | What it holds |
|---|---|
| krs / nip | KRS number (10 digits) and the NIP used for lookup |
| companyName / legalForm | Full legal name and form from KRS |
| statementType | individual (jednostkowe) or consolidated (skonsolidowane) |
| year / periodStart / periodEnd | Financial year and reporting period |
| fileFormat | xml, xhtml, or pdf |
| financials | Parsed metrics (see above); null for PDF filings |
| parsedNumbers | true when figures were extracted and validated. false when the filing's layout could not be read reliably - every figure is then null and the full source document is supplied instead. Gate on this before consuming figures. |
| rawXml / rawXmlUrl | Complete raw file, inlined or linked when large |
| largeStatement | true if the file is over 1 MB |
| success | Whether the statement was retrieved. true even when parsedNumbers is false, because the source document is still delivered |
Sample record (JSON, people masked)
{
"krs": "0000023302",
"companyName": "KGHM POLSKA MIEDŹ SPÓŁKA AKCYJNA",
"legalForm": "SPÓŁKA AKCYJNA",
"statementType": "individual",
"year": 2024,
"periodStart": "2024-01-01",
"periodEnd": "2024-12-31",
"fileFormat": "xhtml",
"financials": {
"totalAssets": 50405000000,
"equity": 31154000000,
"revenue": 29894000000,
"netProfit": 2788000000
},
"success": true
} What it does not do
- PDF filings cannot be parsed into structured financials (a minority) - metadata is still returned.
- XHTML visual renders (PDFs converted by the register) are read by layout. Where the layout cannot be read reliably the figures are withheld - parsedNumbers: false and every figure null - rather than reported as approximations. Returned figures are validated against the balance sheet's own arithmetic. Structured XML parses most accurately, and the raw content is always available either way.
- Only the latest annual statement is returned; historical statements are not yet supported.
- Very large statements (over maxStatementSizeMB, default 25 MB) are skipped with no charge.
- Newly registered or exempt micro-entities may have no statements on file.
- Register maintenance breaks. The Ministry takes the register offline now and then (its site shows "Przerwa techniczna"). A run that meets one keeps trying for a couple of minutes, then fails with a status message that names the break. Nothing is charged; re-run once the register is back.
KRS (financials) (Poland) does not offer a clean public API for programmatic queries. getregdata reads the official source directly and returns structured JSON, keyed off the KRS identifier - so you get API-like access without an official endpoint.
Install the getregdata agent skills or MCP server, or run the regdata/poland-krs-financial-scraper actor on Apify. Query by KRS or company name and receive structured, source-attributed records. It is free to install; you pay per result on Apify.
Annual financial statements and filings from the National Court Register.
Not ready to run it yourself? Tell us which companies or filters you need. We run it once and send you the file, and a quote if you want it regularly. No newsletter, no sales calls.
Your request is in our inbox. We reply within one business day, from [email protected].
The form could not send just now - nothing is lost. Send it as an e-mail instead (your text is already filled in), or write to [email protected].
Prefer e-mail? [email protected] · We use your details only to answer you. Privacy
One call: identity, beneficial owners and insolvency screened against the company and every owner, as a single verdict.
Ultimate beneficial owners from the Central Register of Beneficial Owners.
Management and board members registered in the National Court Register.
Insolvency and restructuring entries from the National Debtor Register.
Ownership and mortgage entries from the electronic land and mortgage register.
Company identity, PKD activity and status from the official GUS registry.
Regulated financial entities from the KNF supervision registers.
Official court and commercial announcements from Monitor Sądowy i Gospodarczy.
Abusive contract clauses from the UOKiK consumer-protection registry.
Waste-management registration entries from the BDO database.
Politically exposed persons from the Polish parliament for KYC/AML screening.
Local units and premises (jednostki lokalne) from the REGON registry.