French Accountants Scraper · Expert-Comptable Directory avatar

French Accountants Scraper · Expert-Comptable Directory

Pricing

from $1.99 / 1,000 results

Go to Apify Store
French Accountants Scraper · Expert-Comptable Directory

French Accountants Scraper · Expert-Comptable Directory

Export French accounting firms from the official Ordre register: name, address, phone, website, profile URL. Run by city or nationwide. No login. No API key. Public official register. JSON, CSV, Excel for CRM and B2B prospecting.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Corentin Robert

Corentin Robert

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Share

French Accountants Directory Scraper — experts-comptables.org

Export the official French expert-comptable register — firm names, addresses, phones, accountant names, and optional SIREN/SIRET — in one dataset ready for CRM, outbound, or market research.

Stop copying annuaire.experts-comptables.org by hand. This Actor reads the public Ordre directory over plain HTTP, structures every accounting firm as a row, and lets you run by commune, nationwide, or from profile URLs you already have. Download JSON, CSV, or Excel from the Apify Dataset tab — or schedule monthly refreshes via API.

No login. No API key. No account on the source site.

Important: Data comes from public firm profile pages. Email is not included — the register does not expose it in structured data. Optional SIREN/SIRET matching uses the public French business register and returns a confidence score — filter on gouvMatchConfidence: "high" for CRM imports. You must comply with Ordre des experts-comptables terms, GDPR, and professional-directory rules.


Who is this for?

You are…Typical goalSuggested setup
B2B supplier / SaaS selling to accounting firmsVerified firm contacts by regionBy city with target communes, or Full directory for France-wide coverage
Outbound / SDR teamPhone + address for cold calling or mailBy city for a département rollout; export CSV from Dataset
CRM / data opsSIREN, SIRET, NAF for enrichment pipelinesAny mode + Match SIREN & SIRET turned ON
Market researcher / analystCount and map firms nationallyFull directory with Max firms = 0 (no row cap)
Ops team refreshing an old listLatest phones and addressesYour URLs — paste profile links from a previous export

What you get by default: firm name, full address, phone, GPS coordinates, canonical profile URL, and full names of experts-comptables listed on the profile — typically ~100% fill on core fields in our samples. Website and social links appear when the profile publishes them (~10–20% for website on mixed communes).

When to enable SIREN/SIRET matching: turn Match SIREN & SIRET on when you need company identifiers for HubSpot, Pipedrive, or chaining with French Establishments. Leave it off for the fastest directory-only export. In our tests, ~80% of independent cabinets match with high confidence; network brands may share a holding SIREN — use siret for the local branch.

Which mode to pick: use By city for your first run (fast, cheap, easy to validate). Switch to Full directory when you need a national file (~22k–31k unique firms, ~30–45 min without SIREN enrichment). Use Your URLs when you already have profile links.


Quick start

First run in the Apify Console (~2 minutes)

  1. Open this Actor → Input tab.
  2. Mode: leave By city (default — safe for Try for free).
  3. City: pick Rodez or choose Paris, Lyon, etc. from the dropdown.
  4. Other city (slug): leave blank unless your commune is not listed (e.g. annecy).
  5. Match SIREN & SIRET: leave unchecked for a fast preview.
  6. Max firms: 50 on Try — enough to validate the dataset.
  7. Click Start (or Try for free).
  8. Watch Progress: in the log and the short status line (e.g. Scanning France — 34% · 120 firms saved).
  9. OutputDataset — open the View dropdown: Outreach CRM for phone + firm names (cold outreach), CRM + SIREN when register matching is on, or Accounting firms for the full default table. Export JSON, CSV, or Excel.

Export all of France

  1. ModeFull directory — all of France.
  2. Max firms0 (no row ceiling).
  3. Optional: enable Match SIREN & SIRET if you need identifiers (adds ~0.3–0.5 s per firm).
  4. Start — expect ~22k–31k rows and ~30–45 minutes (longer with SIREN matching). Rows appear while the run is still going.

Refresh firms you already know

  1. ModeYour URLs — refresh known firms.
  2. Paste one official profile URL per line.
  3. Start — skips commune discovery; fetches only the pages you listed.

Run via API

curl -X POST "https://api.apify.com/v2/acts/corent1robert~experts-comptables-annuaire-scraper/runs?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"mode": "cities",
"cityPreset": "paris",
"citySlugs": ["lyon"],
"maxProfiles": 0,
"enrichSiren": true
}'

Fetch results:

$curl "https://api.apify.com/v2/datasets/DATASET_ID/items?format=json&token=YOUR_API_TOKEN"

Use maxProfiles: 0 for no row cap. Add "resume": true on full-directory runs to continue after an abort (API-only).


Demo video

Record a 2-minute screencast (Console → Start → Dataset → CSV export). When ready, paste the bare YouTube URL on the line below — Apify auto-embeds it on the Store page.

Step-by-step script: ./docs/DEMO-VIDEO-SCRIPT.md.


Ready-made examples (published tasks)

Four one-click presets for the Apify Examples tab. Publish each task in Console (Tasks → Publication) after a successful cloud run — until then, the links below return 404 (expected).

ExampleBest for
Export French accounting firms nationwide for CRMNational CRM file — phones and accountant names
Find expert-comptables in Paris with phone numbersÎle-de-France outbound — city preset
Match accounting firms to SIREN and SIRET in LyonCRM enrichment with register IDs
Refresh expert-comptable contacts from your URL listUpdate an existing spreadsheet of profile URLs

Maintainer kit: published-tasks/publication-console.md (copy-paste SEO fields for Console).


What does it extract?

CategoryFields
IdentityFirm name (name), register ID (searchId)
PeopleAccountant full names (accountants array)
LocationStreet address, postal code, city, latitude / longitude
ContactPhone (from JSON-LD on profile pages)
Web & socialWebsite, LinkedIn, Facebook — when linked on the profile
Profile extrasSpoken languages, competences — when shown in HTML
Business register (optional)siren, siret, gouvNomComplet, gouvAdresse, gouvCodeNaf, gouvMatchScore, gouvMatchConfidence, gouvAnnuaireUrl
LinksCanonical profile URL, discovery commune slug (citySlug)
MetadatascrapedAt; scrapeError if a row failed partially

Output shape: one row per firm record in the Dataset. Deduplication uses searchId.


Typical fill rates

Benchmark on a Rodez sample (30 firms, June 2026):

FieldFill rate
name, streetAddress, postalCode, city, profileUrl, phone, latitude, longitude100%
accountants (at least one name on profile)~95%
languages100% (Rodez — varies by commune)
website~20%
linkedinUrl~7%
facebookUrl~3%
emailNot available

With Match SIREN & SIRET enabled (sample of 120 cabinets without prior SIREN):

MetricRate
SIREN + SIRET found~89%
gouvMatchConfidence: high~80%
No reliable match~11%

Filter CRM imports with gouvMatchConfidence === "high" for the safest automatic match rate.


Three modes (JSON reference)

By city

{
"mode": "cities",
"cityPreset": "paris",
"citySlugs": ["lyon"],
"maxProfiles": 0,
"enrichSiren": false
}

Use cityPreset in the Console, customCitySlug for unlisted communes, or citySlugs array via API for multiple cities.

Full directory

{
"mode": "fullDirectory",
"maxProfiles": 0,
"maxCities": 0,
"enrichSiren": true
}

Use maxCities: 5 (API) to cap communes during testing.

Your URLs

{
"mode": "bulkUrls",
"profileUrls": [
"https://annuaire.experts-comptables.org/expert-comptable/12346-douls-associes-rodez-12000"
],
"enrichSiren": true
}

How it works

  1. Commune list (full directory only) — loads a bundled index of ~4 679 communes instantly (no network crawl). Use API flag refreshCommuneIndex: true to rebuild from the official regional index.
  2. Map scan — collects firm IDs (searchId) per commune.
  3. Deduplication — merges IDs before export.
  4. Profile export — fetches each profile page; parses JSON-LD, accountant names, and HTML panels.
  5. Optional SIREN/SIRET — matches each firm to the official business register (name + address + accountants).
  6. Dataset — pushes each row immediately so you see results during long runs.

HTTP-only — no browser.


Input (Console vs API)

Console fieldPurpose
ModeBy city / Full directory / Your URLs
CityBy city — dropdown (Paris, Lyon, Rodez, …)
Other city (slug)By city — optional override, e.g. annecy
Profile URL(s)Your URLs — one official link per line
Match SIREN & SIRETOptional business-register matching
Max firmsRow cap; 0 = no cap

API-only options: resume, refreshCommuneIndex, citySlugs, indexConcurrency, verboseLogs, enrichSirenDelayMs, mapConcurrency, maxConcurrency, proxyConfiguration, maxCities, maxRequestRetries, checkpointEveryCommunes.


Output sample

{
"searchId": 12346,
"name": "DOULS & ASSOCIES",
"streetAddress": "143 RUE PIERRE CARRERE",
"postalCode": "12000",
"city": "Rodez",
"phone": "05 65 75 77 00",
"website": "https://www.douls-associes.com/",
"accountants": [
"ARNAUD CLEMENTE",
"SOPHIE DOULS",
"PIERRE DOULS",
"ERIC DUPRE"
],
"languages": "Français",
"profileUrl": "https://annuaire.experts-comptables.org/expert-comptable/12346-douls-associes-rodez-12000",
"citySlug": "rodez",
"latitude": 44.362079,
"longitude": 2.557961,
"siren": "305067407",
"siret": "30506740700059",
"gouvNomComplet": "DOULS & ASSOCIES",
"gouvAdresse": "POLE INFORMATIQUE DE LA GINESTE RUE PIERRE CARRERE 12000 RODEZ",
"gouvCodeNaf": "69.20Z",
"gouvMatchScore": 0.766,
"gouvMatchConfidence": "high",
"gouvMatchMethod": "nom_cp_naf",
"gouvAnnuaireUrl": "https://annuaire-entreprises.data.gouv.fr/entreprise/305067407",
"scrapedAt": "2026-06-17T15:39:27.701Z"
}

siren / siret / gouv* fields appear only when Match SIREN & SIRET is enabled and a match is found.

Use profileUrl or searchId as the stable key across runs.


How much does it cost to scrape experts-comptables.org?

This Actor uses pay-per-event pricing on Apify — you pay per exported firm row, not for idle compute. HTTP-only runs keep platform compute low; residential proxy is not required for typical jobs.

EventList price (FREE tier)
Run start (apify-actor-start)$0 (always free)
Firm with phone (firm-contact-row)$0.002 / row
Firm + SIREN/SIRET (firm-enriched-row)$0.004 / row
Firm without phone / errors (firm-basic-row)$0.001 / row

Per-row rates by Apify tier (contact row / enriched row):

TierContactEnriched
FREE$0.002$0.004
BRONZE$0.0018$0.0036
SILVER$0.0016$0.0032
GOLD$0.0014$0.0028
PLATINUM$0.0012$0.0024
DIAMOND$0.001$0.002
ScenarioRowsFREE tier total (rows only)
Try for free (Rodez, 50 firms)50~$0.10
Paris (city export)~800~$1.60
Full France (no SIREN)~25k~$50
Full France + SIREN~25k~$100

Run start is not billed — you only pay per exported row. Configure events in Apify Console → Monetization → Pay per event (checklist: docs/PPE-CONSOLE.md).


This Actor accesses public pages from the official Ordre register — the same information visible to any visitor. You remain responsible for:

  • GDPR and French privacy law when storing professional contact data.
  • Direct marketing rules (B2B outreach requires legitimate interest and opt-out respect).
  • Terms of use of annuaire.experts-comptables.org.

Use outputs for legitimate professional purposes — B2B services, market research, CRM enrichment — not abusive bulk spam.


Also available — French B2B registers on Apify

ActorBest for
ORIAS Scraper · French Insurance Broker LeadsRegulated insurance & finance intermediaries — emails, phones, ORIAS numbers
French Companies · Search & SIREN EnrichDeep company data when you already have SIRENs — directors, finances, NAF
French Establishments · All Sites by SIRENOne row per SIRET / branch once you have SIRENs
Notaires.fr Directory ScraperOfficial notary offices — same directory workflow
BODACC Legal Announcements ScraperCreations, insolvencies, business sales by SIREN
Houzz FR Professionals ScraperArchitects and builders — city search + website enrichment

Browse all: apify.com/corent1robert


FAQ

Is this affiliated with the Ordre des experts-comptables?
No. It automates access to public directory pages.

Why is email missing?
The profile uses a Contacter par mail button (separate UI). JSON-LD does not include email.

How accurate is SIREN/SIRET matching?
Independent cabinets: ~80% high confidence in our samples. Network brands (TGS, Baker Tilly, etc.) may resolve to a holding SIREN — use siret and gouvAdresse to validate the local branch. Filter on gouvMatchConfidence: "high" for automatic CRM imports.

How do I find a commune slug?
Open …/recherche/ville/paris on the directory → slug is paris.

Can I enrich an existing CSV offline?
Yes — use scripts/enrich-experts-comptables-siren.mjs in the repo for batch CSV enrichment with the same matching logic.


Support

Custom integrations, larger exports, or CRM wiring: corentin@outreacher.fr


Local development

npm install
cp .actor/INPUT.json storage/key_value_stores/default/INPUT.json
apify run
npm test

Heavy local preset (SIREN on):

$apify run --input-file=./input.example.json

Results: storage/datasets/default/. Unit tests: npm test.

CSV enrichment script:

node scripts/enrich-experts-comptables-siren.mjs \
--input ~/Downloads/your-export.csv \
--only-missing --sample 100