France Companies Scraper - SIRENE, SIRET, NAF & Directors avatar

France Companies Scraper - SIRENE, SIRET, NAF & Directors

Pricing

from $1.70 / 1,000 company delivereds

Go to Apify Store
France Companies Scraper - SIRENE, SIRET, NAF & Directors

France Companies Scraper - SIRENE, SIRET, NAF & Directors

French companies from the official SIRENE registry, no API key: search by name, NAF, department, postal code, size, revenue, director or map. Pappers search links read filter by filter, free count, BODACC insolvency and VAT checks. SIREN, SIRET, address, revenue, directors. US$ 2 per 1,000.

Pricing

from $1.70 / 1,000 company delivereds

Rating

0.0

(0)

Developer

Scrapewise Data

Scrapewise Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

France Companies Scraper: SIRENE registry, SIREN/SIRET, NAF codes and directors

Scrape French companies from the official SIRENE / RNE registry (the data behind annuaire-entreprises.data.gouv.fr) without an API key or an account. Search by name or activity ("boulangerie", "cabinet comptable", "plombier"), by NAF / APE code, department, postal code, commune or region, company size, headcount, legal form, revenue and official labels (RGE, Qualiopi, ESS, organic, associations...), or paste a list of SIREN / SIRET numbers. Get one clean row per company with SIREN, head-office SIRET, legal and trade names, NAF code and sector, legal form, headcount range, creation date, status, full head-office address and GPS, VAT number, last revenue and net income, number of establishments and the list of directors (name and role).

Switch to one row per establishment (SIRET) to list every shop, branch or site in a department or postal code. Searches above the registry's 10,000-result limit are split by department automatically, so a whole sector of France is one run.

Built for B2B prospecting and lead lists, sales territory planning, market sizing by sector and region, KYB and supplier checks, CRM enrichment from a SIREN list, and new-business monitoring (companies created after a date).

US$ 2.00 per 1,000 companies. No start fee, no monthly fee. Error rows, duplicates and rows outside your filters are free.

At a glance

  • Price per 1,000 companies, Free plan: US$ 2.00
  • API key or account needed: No
  • NAF, department, postal code, size, legal form, revenue filters: Yes, all registry filters
  • More than 10,000 results per search: Yes (auto split by department)
  • One row per establishment (SIRET) mode: Yes
  • Resumes after a platform restart without charging twice: Yes

What it fixes

  • A pasted search link never exports more than it shows. A pappers.fr search link is read filter by filter (status, departments, NAF, legal form, headcount, revenue, creation dates, director; departments and postal codes count for the head office, as on Pappers). If the link has a filter this Actor cannot apply, the link is not run and you get a free UNSUPPORTED_FILTER row, instead of a wider search that burns your budget.
  • Free count before you pay. mode: "count" (or countOnly) tells you how many companies a search matches, for free, so you can size a list before buying it.
  • Map search. lat, lon and radiusKm (up to 50 km) list the companies around a point.
  • Insolvency and VAT checks, free sources. checkBodacc adds the BODACC official gazette signal (number of notices, last notice, insolvency proceedings); validateVat checks the VAT number on the EU VIES service. Same price.
  • No API key, no account. It reads the French government's open registry API; Pappers or Societe.com links are only read for their filters or SIREN.

Switching from another French companies actor? Your existing input works

Paste the input you already use. These names and values are read as they are:

You may already sendRead as
query, queries, keywordssearchTerms
sirens, siren, siret (and mode: "siren")sirenNumbers
searchUrls (pappers.fr search or company links), Societe.com company linksstartUrls
departement, code_postal, code_commune, region, activite_principale, section_activite_principale, categorie_entreprise, tranche_effectif_salarie, nature_juridique, ca_min, ca_max, est_rge, est_bio, est_qualiopi, est_ess, est_association...the same registry filters
nom_personne, prenoms_personne, type_personnecompanies of a director by name
naf, section, codePostal, departement, region, natureJuridique, categorieEntreprise, estAssociation (any = no filter), extraParamsthe matching filters
etat_administratif (A/C), etatAdministratif (any/A/C), activeOnlystatus
categorieEntreprise: "TPE"headcount under 10
mode: search, geo (lat, lon, radiusKm), siren, countsearch, map search, SIREN list, free count
maxResultsPerQuery (0 = no limit)maxResultsPerSearch
maxResultscap for the whole run (per search when you also send searchUrls, precision or bases); 0 = no limit
includeOfficers: false, requireFinancials, checkBodacc, validateVatno directors in the rows, only companies with published accounts, BODACC and VAT checks

When this form's status is left at its default (active), the status sent under another name wins.

What you can do with it

  • Build a lead list for a sector and region. nafCodes: ["62.01Z"], departments: ["75", "92"], companyCategories: ["PME"] gives software companies with establishments in Paris and Hauts-de-Seine.
  • Size a market. nafCodes: ["56.10A"], maxResultsPerSearch: 200000 reads every active restaurant in France, department by department, one row per company.
  • List every location. resultType: "establishments" with postalCodes: ["75011"] returns each shop or branch (SIRET) located in that postal code, with its own address, trade name and headcount.
  • Enrich a SIREN list. Paste SIREN or SIRET numbers in sirenNumbers and get the full registry row for each.
  • Find new businesses. createdAfter: "2026-01-01" keeps only companies created this year.
  • Target certified companies. rgeOnly, qualiopiOnly, essOnly, bioOnly, associationsOnly, missionCompaniesOnly and more use the registry's own labels.
  • Feed a CRM or a spreadsheet. Export CSV, Excel or JSON, or call it through the Apify API and schedule it.

Input

FieldWhat it does
searchTermsNames, activities or words (boulangerie, plombier, Danone). Leave empty to search by filters only.
sirenNumbers9-digit SIREN or 14-digit SIRET numbers.
startUrlsannuaire-entreprises.data.gouv.fr links: /entreprise/...-<siren>, /etablissement/<siret>, /rechercher?terme=....
resultTypecompanies (one row per SIREN, default) or establishments (one row per matching SIRET).
maxResultsPerSearchCompanies per term, link or filter search. Default 100, no upper limit.
maxItemsHard cap on charged rows for the whole run.
nafCodesNAF / APE codes (56.10A, 62.01Z, 10.71C).
activitySectionsNAF section letters A to U.
departments, postalCodes, communeCodes, regionsLocation of the establishments (INSEE codes).
companyCategoriesPME, ETI, GE.
employeeRangesINSEE headcount ranges (11 = 10-19, 12 = 20-49, 21 = 50-99...).
legalFormsINSEE legal category codes (5710 SAS, 5499 SARL, 6540 SCI, 9220 association; 2 digits also work).
statusactive (default), closed or any.
minRevenue, maxRevenueLast published revenue in euros.
rgeOnly, qualiopiOnly, essOnly, bioOnly, associationsOnly...Registry labels.
sortBySizeLargest companies first.
excludeSoleProprietorsSkip entreprises individuelles (default on).
soleProprietorsOnlyOnly entreprises individuelles (freelancers, craftsmen).
employersOnly, createdAfter, createdBefore, excludeKeywordsLocal filters, free.
modesearch (default), count (free count, no rows), geo (map search with lat, lon, radiusKm) or siren.
lat, lon, radiusKmMap search: companies with an establishment within the radius (up to 50 km).
checkBodaccAdd BODACC gazette data: bodaccEventCount, lastBodaccEventDate, lastBodaccEventType, hasInsolvencyProceeding, lastInsolvencyEventDate, lastInsolvencyEvent, bodaccUrl. Same price.
validateVatCheck vatNumber on the EU VIES service: vatValid, vatCheckStatus, vatCheckedAt. Same price.
includeOfficersfalse leaves directors empty.
requireFinancialsOnly companies with published revenue.

Example: bakeries with 10 to 49 employees in the Rhône department.

{
"nafCodes": ["10.71C"],
"departments": ["69"],
"employeeRanges": ["11", "12"],
"maxResultsPerSearch": 500
}

An empty input runs a small example (20 companies for "boulangerie"), so the Actor never fails on a blank form.

Output

One real row from a local test run on 2026-09-29 (filters above; director names replaced by "..."):

{
"type": "company",
"siren": "899507552",
"siret": "89950755200235",
"name": "AB COPAINS",
"legalName": "AB COPAINS",
"acronym": null,
"tradeNames": [],
"status": "Active",
"nafCode": "10.71C",
"nafCode2025": "10.71H",
"activitySection": "C",
"activitySectionLabel": "Manufacturing",
"legalFormCode": "5710",
"legalForm": "SAS",
"isSoleProprietor": false,
"companyCategory": "PME",
"employeeRangeCode": "12",
"employeeRange": "20-49",
"employeeRangeYear": 2023,
"creationDate": "2021-05-17",
"closingDate": null,
"establishmentsCount": 46,
"openEstablishmentsCount": 44,
"address": "229 RUE DE SOLFERINO 59000 LILLE",
"postalCode": "59000",
"city": "LILLE",
"communeCode": "59350",
"department": "59",
"region": "32",
"country": "France",
"latitude": 50.6272071488439,
"longitude": 3.06306601045026,
"vatNumber": "FR31899507552",
"revenue": 13405375.0,
"netIncome": 157961.0,
"financialYear": 2025,
"directors": [
{"type": "person", "lastName": "...", "firstNames": "...", "role": "Président de SAS"},
{"type": "person", "lastName": "...", "firstNames": "...", "role": "Directeur Général"},
{"type": "company", "name": "EON ADVISORY", "siren": "980535934", "role": "Commissaire aux comptes titulaire"}
],
"collectiveAgreements": ["0843", "1501"],
"isAssociation": false,
"associationId": null,
"isEss": true,
"isRge": false,
"isBio": true,
"isQualiopi": false,
"isTrainingOrganization": false,
"isMissionCompany": false,
"isHealthSocial": false,
"isLivingHeritage": false,
"isPublicAdministration": false,
"lastUpdated": "2026-09-29T11:16:50",
"annuaireUrl": "https://annuaire-entreprises.data.gouv.fr/entreprise/899507552",
"searchTerm": null,
"position": 1,
"source": "filters",
"scrapedAt": "2026-09-30T02:57:35Z",
"errorCode": null,
"error": null
}
  • Location filters (departments, postalCodes, communeCodes, regions) match establishments, as in the registry itself: a company with a shop in Lyon matches department 69 even if its head office (the address in a company row) is in Lille. Use resultType: "establishments" to get the address of each matching location.
  • revenue and netIncome exist only for companies that publish their accounts.
  • In establishments mode each row also carries isHeadOffice, isEmployer and the company's legal form, size and VAT number.

The run also saves SEARCH_SUMMARY in its key-value store: for each search, the query sent to the registry, how many companies match, how many pages and department slices were read and how many rows were delivered (free).

Error rows (never charged)

errorCodeWhen
NO_RESULTSNo company matches the search and filters.
NOT_FOUNDThe SIREN/SIRET or link points to a company that is not in the public registry.
INVALID_URLThe link is not an annuaire-entreprises.data.gouv.fr, pappers.fr or societe.com company or search link.
UNSUPPORTED_FILTERA pasted search link has a filter this Actor cannot apply; the link is not run.
BLOCKEDThe registry API refused every attempt for that search.
INVALID_INPUTA field has a value the Actor cannot use (the message says which).
UNEXPECTEDAnything else; the rest of the run continues.

A count row (type: "count", matchesInRegistry) is free. bodaccStatus and vatCheckStatus say UNAVAILABLE when the gazette or VIES did not answer; the company row is delivered anyway.

Pricing

Pay per event, no start fee:

EventPrice per 1,000 (Free plan)Charged for
Company deliveredUS$ 2.00each unique company (or establishment, in establishments mode)

Examples: 1,000 companies cost US$ 2.00. A list of 300 accounting firms costs US$ 0.60. Error rows, duplicates and filtered-out rows are free, and maxItems is a hard stop.

How it works and limits

  • It reads the official public API of the French government's company directory (recherche-entreprises.api.gouv.fr, fed by INSEE SIRENE and the INPI RNE). No key, no login.
  • The registry returns at most 10,000 companies per query. When a search matches more and you ask for more, the Actor reads it again department by department (101 slices) and removes duplicates, so national lists work.
  • Speed in our tests: 300 companies in 16 s, 3,000 companies in 53 s. Local filters (createdAfter, employersOnly, excludeKeywords) are applied after reading, so a very narrow local filter reads more pages.
  • Personal data is kept to what a business list needs. Directors come with name, first names and role only: the Actor never returns their birth date, birth year or nationality. Entreprises individuelles (sole proprietors, legal form 1000) are skipped by default; when you include them, their street address and GPS coordinates are removed (only city, postal code, department and region remain) because that address is usually a home. The registry has no phone numbers or emails and the Actor does not add any from other sources. Companies that asked INSEE not to be listed are hidden by the registry itself.

FAQ

Do I need an INSEE or API key? No.

Is this the same data as Pappers or Societe.com? It is the same official source (SIRENE and RNE) that those sites use, read directly from the government API, at a fraction of the price. It does not include filed financial statements or legal notices beyond the last revenue and net income.

How fresh is it? The registry API is updated daily; each row has lastUpdated.

Can I get every company in a NAF code for all of France? Yes: set the NAF code, leave the location empty and raise maxResultsPerSearch; searches above 10,000 are split by department.

What if the run is restarted by the platform? Rows already in the dataset are not charged again: the Actor reads its own dataset when it starts and skips what was delivered.

Changelog

  • 0.1 (2026-10-08): input of other French companies actors works as is; pappers.fr search links read filter by filter (unknown filters refused, never ignored); pappers.fr and societe.com company links; free count mode; map search; director name search; BODACC and VAT checks; includeOfficers and requireFinancials.
  • 0.1 (2026-09-29): first version: search terms, SIREN/SIRET lists and annuaire links, all registry filters, companies or establishments mode, split by department above 10,000, resume after restart.

Independent tool, not affiliated with INSEE, INPI, DINUM or the French government.