Zefix Switzerland Company Search Scraper
Pricing
from $3.00 / 1,000 results
Zefix Switzerland Company Search Scraper
Search zefix.ch - the Swiss Central Business Names Index (Zentraler Firmenindex). Find companies by name, UID/CHE number, or FCRO-ID, and get legal form, registered address, canton, status, SOGC/SHAB publication history, auditors, branches, and merger history.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Search Zefix — the Swiss Central Business Names Index (Zentraler Firmenindex, zefix.ch) — the official federal registry of every company registered in Switzerland's 26 cantonal commercial registers. Find companies by name, UID/CHE business number, or FCRO-ID, and pull legal form, registered address, canton, status, SOGC/SHAB publication history, auditors, branches, and merger/predecessor history. No auth, no proxy, no cookies required.
What this actor does
- Three modes:
search(by company name),byUid(exact lookup by Swiss UID/CHE number),byEhraid(exact lookup by Zefix's internal FCRO-ID) - Search types: contains / starts with / exact match
- Filters: legal form (19 types), canton (all 26), registration status (active / deleted / in liquidation), municipality / legal seat (free-text, accent-insensitive)
- Full company details on demand: registered address, business purpose, SOGC/SHAB publication history, auditors, branch offices, head offices, merger history (who took over whom), and prior company names
- Empty fields are omitted — you only ever see fields Zefix actually has data for
Output per company
Always present:
ehraid— Zefix's internal firm ID (FCRO-ID)name,uid(formattedCHE-123.456.789),chid(formattedCH-...)legalForm,legalFormId,legalFormShortlegalSeat— registered municipality,canton,cantonNamestatus(Active/Deleted/In liquidation),statusCodeshabDate— date of last SOGC/SHAB (Swiss Official Gazette of Commerce) publicationregistryExcerptUrl/sourceUrl— official cantonal commercial-register excerpt page
Present when applicable:
deleteDate— if the company was struck off the registertradeNames[]— foreign-language name translationspurpose— registered business purpose (German/French/Italian, as filed)address—street,houseNumber,poBox,careOf,town,swissZipCode,country,fullAddressshabPublications[](up to 30 most recent) —publicationDate,shabId,publicationUrl,message(cleaned, unescaped),mutationTypes[]shabPublicationCount— total publication count (may exceed the 30 shown)auditFirms[]/auditFirmFor[]— statutory auditors / companies this firm auditsmainOffices[]/furtherMainOffices[]/branchOffices[]— related registrationshasTakenOver[]/wasTakenOverBy— merger/succession historyoldNames[]— prior registered company names
Every record also includes recordType: "company" and scrapedAt (UTC timestamp).
Input
| Field | Type | Default | Description |
|---|---|---|---|
mode | string | search | search / byUid / byEhraid |
searchQuery | string | Nestle | Company name query (mode=search) |
searchType | string | contains | contains / starts / exact (mode=search) |
uids | array | – | Swiss UID/CHE numbers (mode=byUid), e.g. CHE-191.546.434 |
ehraids | array | – | Zefix FCRO-IDs (mode=byEhraid), e.g. 1009345 |
legalFormIds | array | – | Restrict to one or more of 19 legal forms (mode=search) |
cantons | array | – | Restrict to one or more of the 26 cantons (mode=search) |
statuses | array | – | Restrict to EXISTIEREND / GELOESCHT / IN_AUFLOESUNG (mode=search). Note: Zefix's name-search index only covers active/in-liquidation companies — deleted (GELOESCHT) companies never appear via name search; look them up directly with byUid/byEhraid instead. |
legalSeatQuery | string | – | Restrict to companies whose registered municipality contains this text, e.g. Zurich (mode=search) |
includeFullDetails | bool | false | Fetch full detail (address, purpose, auditors, branches, publications) per result — always on for byUid/byEhraid |
shabPublicationLimit | int | 30 | Max SOGC/SHAB publications to include per company (1–200), when full details are fetched |
maxItems | int | 50 | Hard cap on emitted records (1–1000) |
Example: search by name
{"mode": "search","searchQuery": "Nestle","searchType": "contains","maxItems": 50}
Example: search restricted to Zürich AGs (corporations)
{"mode": "search","searchQuery": "swiss","searchType": "contains","cantons": ["ZH"],"legalFormIds": [3],"statuses": ["EXISTIEREND"],"includeFullDetails": true,"maxItems": 25}
Example: lookup by UID / CHE number
{"mode": "byUid","uids": ["CHE-191.546.434", "CHE-101.329.561"]}
Example: lookup by FCRO-ID
{"mode": "byEhraid","ehraids": [1009345, 1184151]}
Use cases
- KYB / KYC due diligence — verify a Swiss counterparty's legal status, registered address, and signatories before onboarding
- Company registry enrichment — bulk-enrich a list of Swiss UIDs with legal form, canton, and status
- Compliance monitoring — track SOGC/SHAB publications (director changes, capital changes, liquidations) for a watchlist of companies
- M&A / corporate research — trace merger and predecessor-company history (
hasTakenOver/wasTakenOverBy/oldNames) - Sales & lead generation — find active companies by canton and legal form for market mapping
- Auditor mapping — see which firms a given auditor (e.g. a Big Four Swiss office) audits, via
auditFirmFor
FAQ
What's Zefix? The Swiss Central Business Names Index — the federal government's public, canonical index of every company registered in a Swiss commercial register (Handelsregister/Registre du commerce/Registro di commercio). Maintained by the Federal Commercial Registry Office (FCRO). See zefix.ch.
What's the difference between UID and FCRO-ID (EHRAID)? The UID (CHE-xxx.xxx.xxx) is Switzerland's official business identification number, used across all federal registers (VAT, social security, commercial register). The FCRO-ID/EHRAID is Zefix's own internal database key for a firm record — use it for exact, stable lookups within this actor.
Can two different companies share the same UID? Rare, but yes — during some historical mergers (e.g. bank restructurings), a successor entity's Zefix record can carry over a legacy UID. ehraid is always the unique key; byUid returns every firm record matching that UID.
Why do cantons / legalFormIds / statuses filters apply client-side? Zefix's public search endpoint doesn't honor server-side filter parameters for these fields, so this actor fetches a large batch of name matches and filters them locally — the filtered results are exactly as accurate, just computed after the fetch.
Why is shabPublications capped at 30 by default? Long-established companies (banks, insurers) can accumulate hundreds of SOGC/SHAB filings over decades. The 30 most recent are included per record by default to keep payloads manageable; raise shabPublicationLimit (up to 200) to fetch more, and shabPublicationCount always shows the true total regardless of the cap.
Is purpose translated to English? No — it's the company's officially filed purpose text, in whichever official Swiss language (German/French/Italian) it was registered in.
How fresh is the data? Real-time — every request reads live from Zefix's own public search/detail API, the same one the zefix.ch website itself uses.
Is authentication required? No. This actor uses Zefix's public, unauthenticated search endpoints — no API key, login, or proxy needed.
Can I search for deleted (struck-off) companies by name? No — Zefix's name-search index only covers active and in-liquidation companies. Deleted (GELOESCHT) companies are still fully retrievable, but only via a direct byUid or byEhraid lookup (e.g. from a UID you already have on file); the statuses: ["GELOESCHT"] filter in mode=search will never match, since the upstream search API itself excludes deleted firms.