# Poland Krs Rdf Financial Statements Scraper (`jungle_synthesizer/poland-krs-rdf-financial-statements-scraper`) Actor

This is the single strongest demand signal surfaced this run: the incumbent Poland KRS financial-statements

- **URL**: https://apify.com/jungle\_synthesizer/poland-krs-rdf-financial-statements-scraper.md
- **Developed by:** [BowTiedRaccoon](https://apify.com/jungle_synthesizer) (community)
- **Categories:** Business
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.80 / 1,000 record scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Poland KRS + RDF Financial Statements Scraper

Look up any entity in Poland's National Court Register (KRS) by number and get back one complete
record: registry data, board and shareholders, filed annual-account history, and insolvency
status — for both the entrepreneurs register and the associations/foundations register, resolved
automatically. Built for KYB, credit-risk, and compliance teams working with Polish
counterparties.

***

### Poland KRS Scraper Features

- Resolves any 10-digit KRS number to its current registry excerpt — company or association,
  no need to know which register it's filed under
- Returns legal name, legal form, NIP, REGON, registration date, and registered office
- Board members and (for limited-liability companies) shareholders, one formatted line per person
- Full filed-annual-account history — every year a financial statement was submitted, with the
  filing date
- Consolidated group financial-statement filing history, for parent companies
- Deep-link URLs into the official annual-account document repository, keyed by filing year
- Insolvency, restructuring, liquidation, and merger/transformation notices, when present
- Bulk input — pass a list of KRS numbers, get one row per entity
- Flat, consistent output schema — ready for a KYB pipeline or a credit-risk model

***

### Who Uses Polish Company Registry Data?

- **KYB and onboarding teams** — verify a Polish counterparty's legal status, registered
  address, and board before signing
- **Credit and risk teams** — confirm an entity has filed its required annual accounts and check
  for insolvency or liquidation flags
- **Supply-chain and procurement teams** — screen Central-European vendors and subcontractors
- **M\&A and due-diligence teams** — pull board history, shareholder structure, and merger records
  in one call
- **Compliance teams** — monitor a portfolio of Polish entities for new insolvency or
  restructuring notices

***

### How Poland KRS Scraper Works

1. Provide a list of KRS numbers (with or without leading zeros).
2. The actor resolves each number against the National Court Register — companies and
   partnerships as well as associations, foundations, and other organizations.
3. Each result comes back as one flat record: registry details, people, filing history, and
   status flags.

***

### Input

```json
{
  "krsNumbers": ["0000006865", "0000028860"],
  "maxItems": 10
}
```

| Field        | Type             | Default      | Description                                                              |
|--------------|------------------|--------------|--------------------------------------------------------------------------|
| `krsNumbers` | array of strings | *(required)* | KRS numbers to look up. Accepts the number with or without leading zeros |
| `maxItems`   | integer          | `10`         | Maximum number of records to return                                      |

***

### Poland KRS Scraper Output Fields

```json
{
  "krs_number": "0000006865",
  "register": "RejP",
  "name": "CD PROJEKT RED SPÓŁKA AKCYJNA",
  "legal_form": "SPÓŁKA AKCYJNA",
  "nip": "7342867148",
  "regon": "49270733300000",
  "registration_date": "06.04.2001",
  "last_entry_no": "175",
  "last_entry_date": "10.08.2026",
  "status_znany": "active",
  "registered_office": "JAGIELLOŃSKA 74, 03-301, WARSZAWA, MAZOWIECKIE, POLSKA",
  "share_capital": "99910510,00 PLN",
  "board_members": ["P M N — CZŁONEK ZARZĄDU", "A K B — CZŁONEK ZARZĄDU"],
  "shareholders": [],
  "pkd_activity": ["62.10.A — DZIAŁALNOŚĆ W ZAKRESIE PROGRAMOWANIA GIER KOMPUTEROWYCH"],
  "filed_financial_statements": ["OD 01.01.2025 DO 31.12.2025 (filed 30.06.2026)"],
  "consolidated_group_statements": ["OD 01.01.2025 DO 31.12.2025 (filed 30.06.2026)"],
  "fiscal_year_end": "31.12.2001",
  "bankruptcy_notices": [],
  "rdf_document_urls": ["https://ekrs.ms.gov.pl/rdf/pd/search?krs=0000006865&period=..."]
}
```

| Field                           | Type     | Description                                                                  |
|---------------------------------|----------|------------------------------------------------------------------------------|
| `krs_number`                    | string   | 10-digit KRS registry number                                                 |
| `register`                      | string   | Register the entity is filed under (entrepreneurs or associations)           |
| `name`                          | string   | Full legal name                                                              |
| `legal_form`                    | string   | Legal form (spółka akcyjna, sp. z o.o., stowarzyszenie, etc.)                |
| `nip`                           | string   | Tax identification number                                                    |
| `regon`                         | string   | Statistical (REGON) number                                                   |
| `registration_date`             | string   | Date first registered in KRS                                                 |
| `last_entry_no`                 | string   | Most recent register entry number                                            |
| `last_entry_date`               | string   | Date of the most recent register entry                                       |
| `status_znany`                  | string   | `active`, `in-bankruptcy`, `in-restructuring`, `in-liquidation`, `dissolved` |
| `registered_office`             | string   | Full registered address                                                      |
| `share_capital`                 | string   | Share/nominal capital with currency                                          |
| `board_members`                 | string\[] | Board members with role, one per line                                        |
| `shareholders`                  | string\[] | Shareholders and their stake, for limited-liability entities                 |
| `pkd_activity`                  | string\[] | Business activity codes and descriptions                                     |
| `filed_financial_statements`    | string\[] | Every filed annual-account period, with filing date                          |
| `consolidated_group_statements` | string\[] | Filed consolidated group financial statements, with filing date              |
| `fiscal_year_end`               | string   | Date the entity's first fiscal year ended                                    |
| `bankruptcy_notices`            | string\[] | Insolvency, restructuring, liquidation, and merger/transformation notices    |
| `rdf_document_urls`             | string\[] | Links to the official annual-account document search, per filing year        |

***

### FAQ

#### Do I need to know which register a KRS number belongs to?

No. The actor checks both the entrepreneurs register and the associations/foundations register
for every number you provide, so a mixed list — companies alongside a foundation or an
association — works in a single run.

#### What does `status_znany` mean?

It's a plain-language read of the registry's insolvency and liquidation section:
`active` when none apply, otherwise `in-bankruptcy`, `in-restructuring`, `in-liquidation`, or
`dissolved`.

#### Why is `shareholders` empty for some companies?

Joint-stock companies (spółka akcyjna) don't carry a shareholder rubric in the registry — only
limited-liability companies (sp. z o.o.) do. `board_members` is populated either way.

#### How current is the data?

Each lookup returns the entity's live current excerpt (odpis aktualny) — the same document the
Polish courts issue on request, as of the moment the actor runs.

#### Does this include the actual PDF financial statements?

`filed_financial_statements` lists every period a statement was filed and when. `rdf_document_urls`
links into the official document repository for that filing year. Resolving individual PDF
document IDs is on the roadmap — request it below if it's blocking you.

***

### Need More Features?

Open a request at <actor-support@orbtop.com> for direct PDF
document links, name/NIP search (instead of KRS number), or historical excerpt snapshots.

### Why Use Poland KRS Scraper?

- **One call, full picture** — registry, board, shareholders, filing history, and insolvency
  status together, instead of separate lookups for financials and ownership
- **Covers the whole register** — entrepreneurs and associations/foundations, not just companies
- **Official registry data** — sourced from Poland's National Court Register, the record Polish
  courts themselves issue
- **KYB-ready output** — flat records, consistent field names, array fields as formatted strings

# Actor input Schema

## `sp_intended_usage` (type: `string`):

What will this data feed? E.g. lead lists, KYB checks, price tracking.

## `sp_improvement_suggestions` (type: `string`):

Provide any feedback or suggestions for improvements.

## `sp_contact` (type: `string`):

We'll personally help with your use case. No spam.

## `maxItems` (type: `integer`):

Maximum number of records to scrape

## `krsNumbers` (type: `array`):

National Court Register (KRS) numbers to look up. Accepts the 10-digit number with or without leading zeros; each is resolved against both the entrepreneurs (P) and associations/foundations (S) registers automatically.

## Actor input object example

```json
{
  "sp_intended_usage": "Describe your intended use...",
  "sp_improvement_suggestions": "Share your suggestions here...",
  "sp_contact": "Share your email here...",
  "maxItems": 10,
  "krsNumbers": [
    "0000006865",
    "0000028860"
  ]
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "sp_intended_usage": "Describe your intended use...",
    "sp_improvement_suggestions": "Share your suggestions here...",
    "sp_contact": "Share your email here...",
    "maxItems": 10,
    "krsNumbers": [
        "0000006865",
        "0000028860"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("jungle_synthesizer/poland-krs-rdf-financial-statements-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "sp_intended_usage": "Describe your intended use...",
    "sp_improvement_suggestions": "Share your suggestions here...",
    "sp_contact": "Share your email here...",
    "maxItems": 10,
    "krsNumbers": [
        "0000006865",
        "0000028860",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("jungle_synthesizer/poland-krs-rdf-financial-statements-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "sp_intended_usage": "Describe your intended use...",
  "sp_improvement_suggestions": "Share your suggestions here...",
  "sp_contact": "Share your email here...",
  "maxItems": 10,
  "krsNumbers": [
    "0000006865",
    "0000028860"
  ]
}' |
apify call jungle_synthesizer/poland-krs-rdf-financial-statements-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,jungle_synthesizer/poland-krs-rdf-financial-statements-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/mWIYtjZ6Zrd2RMGcn/builds/7qpU9eubXLZjPmCpV/openapi.json
