France INPI Company Scraper — Identity, Management & SIRET
Pricing
$5.00 / 1,000 results
France INPI Company Scraper — Identity, Management & SIRET
Scrape any company in France from the French INPI / RNE register by SIREN — legal name, SIREN, legal form, registration date, head-office address, share capital, APE code, management and directors, and establishments with SIRET. Structured JSON, no API key. Pay per completed lookup, matched or not.
Pricing
$5.00 / 1,000 results
Rating
0.0
(0)
Developer
NeuralVerge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
France INPI Company Scraper — Identity, Management & SIRET ✅ No API Key
Scrape any French company from the INPI / RNE register (data.inpi.fr) by SIREN — legal name, SIREN, legal form, registration date, head-office address, share capital, APE activity code, management & directors, establishments with SIRET, observations and filed documents. Powered by the Neuralverge API. No API key or account required. You pay per completed lookup — matched or not; failed runs are never charged.
Ideal for KYC/KYB, due diligence, compliance, lead enrichment and feeding company data to AI agents.
✨ Why this Actor
- 🇫🇷 Full INPI/RNE profile — identity, management, establishments (SIRET), observations and documents in one structured object.
- 💸 One row per completed lookup — no run fee and no start fee. An unresolved SIREN
comes back as one
no resultrow, billed like any other row; a failed run costs $0.00. - 🔑 No API key or account — extraction runs on the Neuralverge backend.
- ⚡ Real-time & structured — fresh data each run and one predictable JSON schema.
🔧 How it works
- Provide a 9-digit French SIREN (e.g.
832601074) — or an advanced full data.inpi.fr profile URL. - Run the Actor. Fetching and AI-structuring the profile happens on the Neuralverge backend.
- Get one flat dataset row per company — 12 columns, all at the top level
(
url,siren,denominationSociale,formeJuridique,dateImmatriculation,adresseSiegeSocial, …). Export to CSV, JSON or Excel, or pull it over the Apify API.
If the company can't be resolved you still get a row — an explicit no result row that
echoes the SIREN you submitted — so nothing disappears silently.
Input
One company per run.
| Field | Type | Notes |
|---|---|---|
companyNumber | string | The 9-digit French SIREN, e.g. 832601074. |
companyUrl | string | Advanced: a full data.inpi.fr profile URL to use instead of the SIREN. |
{"companyNumber": "832601074"}
What you'll receive
One flat row per company. Every field sits at the top level of the row, so the Output tab shows a single table with all 12 columns — there are no views to switch between. Exports (CSV, JSON, XML, Excel) contain exactly the same fields.
Columns: url, siren, denominationSociale, formeJuridique, dateImmatriculation, adresseSiegeSocial, capitalSocial, activitePrincipale, documents.
Lists — managementAndDirection, establishments, observations — come back as arrays. The table renders each as
an expandable "N items" cell; a CSV/JSON/Excel export carries them in full.
Nulls are normal. The column set is the same on every run, so a field the source does not expose for this company comes back
nullrather than disappearing — a spreadsheet or CRM mapping built on one run keeps working on the next.
Example output (real run)
A real dataset row, shown in full.
{"url": "https://data.inpi.fr/entreprises/832601074","siren": "832601074","denominationSociale": "REVOLUT LTD","formeJuridique": "Société commerciale étrangère immatriculée au RCS","dateImmatriculation": "12/10/2022","adresseSiegeSocial": "30 SOUTH COLONNADE 99000 E14 5HX LONDON ROYAUME-UNI","capitalSocial": "5.91 GBP","activitePrincipale": "7010Z - Activités des sièges sociaux","managementAndDirection": [{"nom": "Thakur","prenoms": "SIDDHARTH, NANDAN","role": "Autre","dateDeNaissance": "06/1991","nationalite": null,"adresse": null},{"nom": "Storonskiy","prenoms": "NIKOLAY","role": "Autre","dateDeNaissance": "07/1984","nationalite": null,"adresse": null},{"nom": "Sherwood","prenoms": "MICHAEL, SIDNEY","role": "Autre","dateDeNaissance": "07/1965","nationalite": null,"adresse": null},{"nom": "Gilbert","prenoms": "MARTIN, JAMES","role": "Autre","dateDeNaissance": "07/1955","nationalite": null,"adresse": null},{"nom": "Siewright","prenoms": "JOHN, PHIMISTER","role": "Autre","dateDeNaissance": "02/1955","nationalite": null,"adresse": null},{"nom": "Yatsenko","prenoms": "VLADYSLAV","role": "Autre","dateDeNaissance": "08/1983","nationalite": null,"adresse": null},{"nom": "Wilson","prenoms": "IAN, DOUGLAS","role": "Autre","dateDeNaissance": "04/1964","nationalite": null,"adresse": null},{"nom": "Britton","prenoms": "CAROLINE, LOUISE","role": "Autre","dateDeNaissance": "02/1965","nationalite": null,"adresse": null},{"nom": "LE TONQUÈZE","prenoms": "Romain, Pierre, Louis","role": "Dirigeant en France d’une personne morale étrangère","dateDeNaissance": "09/1995","nationalite": null,"adresse": "Ploeren"}],"establishments": [{"typeEtablissement": "Premier établissement en France (d'une société étrangère)","siret": "83260107400038","adresse": "10 AVENUE KLEBER 75016 , PARIS - FRANCE","activite": "6202A - Conseil en systèmes et logiciels informatiques","dateDebutActivite": null},{"typeEtablissement": "Siège","siret": "83260107400012","adresse": "30 SOUTH COLONNADE 99000 , E14 5HX LONDON - ROYAUME-UNI","activite": "7010Z - Activités des sièges sociaux","dateDebutActivite": null},{"typeEtablissement": "Secondaire fermé","siret": "83260107400020","adresse": "3 RUE DE STOCKHOLM 75008 , PARIS - FRANCE","activite": "6202A - Conseil en systèmes et logiciels informatiques","dateDebutActivite": null}],"observations": ["LEGISLATION APPLICABLE Royaume-Uni, n° d'immatriculation : 0884411"],"documents": null}
When nothing is found
A lookup that runs but matches nothing still returns a row, so a batch never silently loses a SIREN:
| Column | Value |
|---|---|
siren, url | echoed back exactly as submitted |
found | false |
message | why nothing was returned |
Filter these out with found != false (or drop rows where message is set). This row is
billed as one result — see Pricing.
Pricing
Pay per event — $0.005 per company ($5 per 1,000) written to the dataset. There is no run fee and no start fee.
| Event | Price | Charged |
|---|---|---|
| Actor start | free | never |
| Failed run — invalid input, API error, timeout | free | never |
| Row written to the dataset | $0.005 ($5 / 1,000) | every row, including the "no result" row |
A completed lookup is billed as one company, matched or not. When the source returns
nothing, the Actor writes one explicit no-result row — the query you submitted plus
found: false and a message explaining it — and that row is charged at the normal
per-company price. A run that fails (missing input, bad key, upstream error) writes no row
and costs $0.00.
Pricing is on top of your Apify platform usage.
Rate limit
There is a ceiling on how fast one Apify account can pull from the Neuralverge backend: 10 requests per second for this Actor, counted separately from the other Neuralverge Actors. One run is normally one request, so this is about how many runs you start at once, not about the size of a single run — at typical run times that is dozens of runs in flight at once, which is well above ordinary use.
Updated August 2026: this ceiling was doubled from 5 to 10 requests per second. Bulk jobs that used to hit 429s now go through.
Above the ceiling the backend answers HTTP 429. The Actor waits out the Retry-After it asks
for and retries a few times before giving up; a run that does give up writes no row and is not
charged.
If you need a higher rate for a bulk job, get in touch.
Free plan limits
Users on any paid Apify plan are not affected by anything in this section.
On the Apify Free plan this Actor may be started 5 time(s) per calendar month per user. A run that finds nothing still counts, because the lookup is performed either way. Every Neuralverge Actor carries its own allowance — running one never uses up another's. When a limit is reached the Actor stops gracefully with a status message naming it; everything resets on the 1st of every month, and any paid Apify plan removes all of it.
Integrations & API
Results are stored in a standard Apify dataset — export as CSV, JSON, XML or Excel, or fetch on demand through the Apify API. The Actor also plugs into Apify's integrations (Make, Zapier, n8n, webhooks) and can be called from any MCP client.
FAQ
Do I need an account or API key? No. Extraction runs on the Neuralverge backend.
What identifier do I use? The 9-digit French SIREN, e.g. 832601074. You can also
pass a full data.inpi.fr profile URL.
Am I charged if a company isn't found? Yes — a lookup that ran is billed as one
company even when it matched nothing, and you get a no result row that says so. A run
that fails (missing input, upstream error) writes no row and is not charged.
Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by INPI or the Institut National de la Propriété Industrielle. Data originates from the public data.inpi.fr / RNE register.