Romanian Company Registry Scraper
Pricing
from $2.00 / 1,000 company records
Romanian Company Registry Scraper
[$2.00 / 1K] Bulk Romanian company lookup by CUI or VAT number. Queries the ANAF web service and EU VIES. Returns legal name, address, registry number, VAT status, fiscal inactivity, e-Factura registration and five years of turnover, profit and headcount. Unmatched rows are free.
Pricing
from $2.00 / 1,000 company records
Rating
0.0
(0)
Developer
deriverge s.r.o.
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Romanian Company Checker
What does Romanian Company Checker do?
Romanian Company Checker verifies Romanian companies in bulk against ANAF, the Romanian tax authority, straight from its live register. Give it a list of CUIs or VAT numbers and for each one you get back the legal name, address, registry number, VAT status, fiscal inactivity, e-Factura registration, and up to five years of financial statements: net turnover, profit or loss, and average headcount.
The financial history is the part nobody else offers. A company that looks fine on paper but lost money three years running, or slid from 200 employees to 30, tells you something no name-and-address lookup ever will.
- Data comes from ANAF's own web service, the same one the state runs for banks and accountants. No scraping of web pages, no proxies, no headless browser.
- Rows that cannot be matched are free. You only pay for entities we actually resolve.
- Typos never reach the register: every CUI is validated against its checksum locally first, and a failed checksum is reported as such, free of charge.
Why fiscal inactivity matters
Romania has a status called inactiv fiscal. A fiscally inactive supplier still legally exists and can still send you invoices, but you cannot deduct VAT from those invoices. Pay one and the tax loss is yours. ANAF publishes the status, the activation date and the reactivation date, and this actor turns it into a plain risk flag on the row.
The same goes for removal from the register (radiere), the VAT-on-collection scheme, and disagreements between ANAF and the EU VIES system. Every VAT payer is cross-checked against VIES as a second, independent source, and if the two registers disagree, the row says so instead of picking one silently.
Natural persons are not companies
The Romanian register also contains sole traders and family businesses under the same identifier scheme, listed by their personal names. This actor tells the two apart using the registry number prefix and the legal form, and when the entity is a natural person, the name and address are withheld by design. You still learn that the CUI exists, whether it is active and whether it pays VAT. When the register does not say which it is, the row is marked uncertain rather than guessed.
Input
{"companies": ["RO1590082","14399840",{ "cui": "2816464", "reference": "supplier-42" }],"financialYears": 3,"includeVies": true}
Strings and objects can be mixed freely. The optional reference is returned unchanged so you can join results back to your own system.
Output
One row per submitted company:
{"input": "RO1590082","matched": true,"entityType": "legal_entity","cui": "1590082","vatNumber": "RO1590082","name": "OMV PETROM SA","address": "MUN. BUCUREŞTI, SECT. 1, STR. CORALILOR, NR. 22","registryNumber": "J1997008302407","companyActive": true,"fiscallyInactive": false,"vatPayer": true,"vatValidVies": true,"eFacturaRegistered": true,"financials": [{ "year": 2025, "netTurnover": 21550000000, "netProfit": 2900000000, "employees": 10500 }],"riskFlags": [],"provenance": [{ "source": "ANAF", "sourceUrl": "https://webservicesp.anaf.ro/api/PlatitorTvaRest/v9/tva", "ok": true }]}
Every value carries provenance: which register said it, at which URL, and when. If a source was down, the affected fields are null rather than silently wrong, and the provenance row says why.
Watch a list for changes
Checking a supplier once is useful. Checking the same list every morning and reading only what changed is what keeps you out of trouble. Give the run a watch name (or save it as a task and schedule it) and every later run compares its results with the previous one: a company that turned inactive, a new risk flag, a VAT registration cancelled, a published account that disappeared. The differences are stored in the CHANGES record of the run, ready for an integration or an email. The comparison itself is free.
Pricing
| Event | Price |
|---|---|
| Run fee, a tenth of a cent per run that resolves at least one company | $0.001 |
| Company resolved | $0.004 |
| Each additional source that returned an answer | $0.001 |
| Company not found | free |
Speed and limits
ANAF accepts batches of hundreds of companies per request, so identity checks are fast even for long lists. Financial statements are one request per company per year and the register asks for one request per second, which the actor respects. As a rule of thumb: identity for 1,000 companies takes about a minute; identity plus three years of financials for the same list takes about an hour. That is the register's pace, not ours, and it is why financialYears is a setting rather than always on.
Frequently asked questions
What does an unmatched row cost? Nothing. Rows that fail the CUI checksum or that ANAF does not know are returned with an explanation and are never charged. Years with no filed statement are not charged either.
Where does the data come from? ANAF, the Romanian tax authority, through its own web service, plus the EU VIES system as an independent confirmation. Every value carries its source and timestamp.
Why do some rows have no name? Because the identifier belongs to a natural person, not a company. Their name and address are withheld by design; you still learn the entity exists, its status and its VAT registration.
How fresh are the financial statements? They are the yearly statements companies file with ANAF, typically available a few months after each year ends. The most recent filed year comes first.
Sources
| Source | What it provides |
|---|---|
| ANAF (tax authority) | Identity, VAT registration with full history, fiscal inactivity, e-Factura status, removal from the register |
| ANAF bilanț | Yearly financial statements: net turnover, profit or loss, average headcount |
| EU VIES | Independent confirmation that the VAT number is valid for cross-border trade |
All sources are official, public and free of charge, which keeps runs cheap and the data authoritative. This is the Romanian sibling of our Czech & Slovak Company Checker; the two share the same validation engine and the same billing rule that unmatched rows are free.
How to use Romanian Company Registry Scraper
- Open the actor and fill in
companiesin the input form, or paste the JSON input from the example above. - Click Start. The first rows appear in the Output tab within seconds; the run summary is in the Storage tab under the key
SUMMARY. - Download the results as JSON, CSV or Excel from the Output tab, or read them through the API link shown there.
- To run it on a schedule, click Save as a task, set the input once and add a schedule. Scheduled tasks keep their own change snapshot, so the new-only mode works without any extra setup.
Integrations
The actor is available in the Apify apps for Make, Zapier, n8n and Keboola, where you pick it by name and map the input fields. It is also exposed to AI agents through the Apify MCP server, and callable from any language through the Apify API; the API tab on this page has ready-made snippets for Node.js, Python and curl. Every run can post its results to a webhook when it finishes.
Support
Questions and problems go into the Issues tab of this actor. Each issue is answered by the maintainer, and fixes ship as new builds without any change on your side.