French Accountants Scraper Β· Expert-Comptable Directory
Pricing
from $1.99 / 1,000 results
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
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
8 days ago
Last modified
Categories
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 goal | Suggested setup |
|---|---|---|
| B2B supplier / SaaS selling to accounting firms | Verified firm contacts by region | By city with target communes, or Full directory for France-wide coverage |
| Outbound / SDR team | Phone + address for cold calling or mail | By city for a dΓ©partement rollout; export CSV from Dataset |
| CRM / data ops | SIREN, SIRET, NAF for enrichment pipelines | Any mode + Match SIREN & SIRET turned ON |
| Market researcher / analyst | Count and map firms nationally | Full directory with Max firms = 0 (no row cap) |
| Ops team refreshing an old list | Latest phones and addresses | Your 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)
- Open this Actor β Input tab.
- Mode: leave By city (default β safe for Try for free).
- City: pick Rodez or choose Paris, Lyon, etc. from the dropdown.
- Other city (slug): leave blank unless your commune is not listed (e.g.
annecy). - Match SIREN & SIRET: leave unchecked for a fast preview.
- Max firms: 50 on Try β enough to validate the dataset.
- Click Start (or Try for free).
- Watch
Progress:in the log and the short status line (e.g.Scanning France β 34% Β· 120 firms saved). - Output β Dataset β 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
- Mode β Full directory β all of France.
- Max firms β 0 (no row ceiling).
- Optional: enable Match SIREN & SIRET if you need identifiers (adds ~0.3β0.5 s per firm).
- 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
- Mode β Your URLs β refresh known firms.
- Paste one official profile URL per line.
- 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).
| Example | Best for |
|---|---|
| Export French accounting firms nationwide for CRM | National 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 Lyon | CRM enrichment with register IDs |
| Refresh expert-comptable contacts from your URL list | Update an existing spreadsheet of profile URLs |
Maintainer kit: published-tasks/publication-console.md (copy-paste SEO fields for Console).
What does it extract?
| Category | Fields |
|---|---|
| Identity | Firm name (name), register ID (searchId) |
| People | Accountant full names (accountants array) |
| Location | Street address, postal code, city, latitude / longitude |
| Contact | Phone (from JSON-LD on profile pages) |
| Web & social | Website, LinkedIn, Facebook β when linked on the profile |
| Profile extras | Spoken languages, competences β when shown in HTML |
| Business register (optional) | siren, siret, gouvNomComplet, gouvAdresse, gouvCodeNaf, gouvMatchScore, gouvMatchConfidence, gouvAnnuaireUrl |
| Links | Canonical profile URL, discovery commune slug (citySlug) |
| Metadata | scrapedAt; 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):
| Field | Fill rate |
|---|---|
name, streetAddress, postalCode, city, profileUrl, phone, latitude, longitude | 100% |
accountants (at least one name on profile) | ~95% |
languages | 100% (Rodez β varies by commune) |
website | ~20% |
linkedinUrl | ~7% |
facebookUrl | ~3% |
email | Not available |
With Match SIREN & SIRET enabled (sample of 120 cabinets without prior SIREN):
| Metric | Rate |
|---|---|
| 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
- Commune list (full directory only) β loads a bundled index of ~4 679 communes instantly (no network crawl). Use API flag
refreshCommuneIndex: trueto rebuild from the official regional index. - Map scan β collects firm IDs (
searchId) per commune. - Deduplication β merges IDs before export.
- Profile export β fetches each profile page; parses JSON-LD, accountant names, and HTML panels.
- Optional SIREN/SIRET β matches each firm to the official business register (name + address + accountants).
- Dataset β pushes each row immediately so you see results during long runs.
HTTP-only β no browser.
Input (Console vs API)
| Console field | Purpose |
|---|---|
| Mode | By city / Full directory / Your URLs |
| City | By 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 & SIRET | Optional business-register matching |
| Max firms | Row 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.
| Event | List 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):
| Tier | Contact | Enriched |
|---|---|---|
| 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 |
| Scenario | Rows | FREE 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).
Is it legal to scrape experts-comptables.org?
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
| Actor | Best for |
|---|---|
| ORIAS Scraper Β· French Insurance Broker Leads | Regulated insurance & finance intermediaries β emails, phones, ORIAS numbers |
| French Companies Β· Search & SIREN Enrich | Deep company data when you already have SIRENs β directors, finances, NAF |
| French Establishments Β· All Sites by SIREN | One row per SIRET / branch once you have SIRENs |
| Notaires.fr Directory Scraper | Official notary offices β same directory workflow |
| BODACC Legal Announcements Scraper | Creations, insolvencies, business sales by SIREN |
| Houzz FR Professionals Scraper | Architects 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
npminstallcp .actor/INPUT.json storage/key_value_stores/default/INPUT.jsonapify runnpmtest
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 --sample100
