Swiss Commercial Register Scraper — Companies & Bankruptcies avatar

Swiss Commercial Register Scraper — Companies & Bankruptcies

Pricing

Pay per event

Go to Apify Store
Swiss Commercial Register Scraper — Companies & Bankruptcies

Swiss Commercial Register Scraper — Companies & Bankruptcies

Swiss company register events from the Official Gazette of Commerce (SHAB/FOSC): new company registrations, changes, deletions, bankruptcies and insolvency filings with name, UID, seat, legal form, purpose and capital. The daily event feed that Zefix snapshots do not give you.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Riccardo

Riccardo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

38 minutes ago

Last modified

Share

Swiss Commercial Register Gazette (SHAB/FOSC) — bankruptcies, new companies and register changes

Find out the day a Swiss company is founded, changes its name, seat or capital, is struck off the register, or goes bankrupt — without anyone on your team reading the gazette.

It turns the daily feed of the Swiss Official Gazette of Commerce (Schweizerisches Handelsamtsblatt SHAB, Feuille officielle suisse du commerce FOSC, Foglio ufficiale svizzero di commercio FUSC) into JSON, CSV or Excel rows, read from the official amtsblattportal.ch API — no login, no proxies, no browser. Filter by canton, publication type, date window and keyword — a company name, a town or a UID such as CHE-123.456.789.

What you get

Every publication carries: publicationNumber, publicationDate, rubric, subRubric and subRubricLabel (for example HR01 / "New registration"), cantons, language, journalNumber, journalDate, titles (DE/FR/IT/EN), registrationOffice, legalRemedy, lastPublication (the entity's previous gazette entry), publicationUrl, xmlUrl, publicationId and source. publicationText holds the complete official text.

Commercial-register events (Handelsregister Schweiz — HR01 new registrations / Neueintragungen, HR02 changes, HR03 deletions) add structured fields when includeContent is on: companyName, uid (the Swiss business identification number, CHE-…), seat, legalFormCode and legalFormLabel, purpose, and a company block with address, nominal and paid-in capital, audit opting-out and code13. Changes also carry companyBefore — the record as it stood before — and changes, boolean flags for what moved (nameChanged, seatChanged, addressChanged, purposeChanged, capitalChanged and more). transactionType is registration, update or delete; deletionDate is filled for HR03.

Insolvency and other business rubrics in the same run: KK bankruptcies (Konkurse), LS liquidation calls to creditors, NA composition proceedings, SR corporate-law calls, UP notices to shareholders, FM financial-market notices, AB working-time permits, EK precious-metal marks. These carry title, cantons, dates, links and full text; the structured company block is HR-specific.

A Zefix alternative? It is the other half

Zefix shows a snapshot: what a company looks like today. This Actor gives the feed of events — what changed yesterday, nationwide or in your cantons. That is the difference between looking a company up and being told when something happens to it. For company monitoring, insolvency alerts or a list of new companies in Switzerland this week, the gazette is the source. We do not scrape Zefix, and this Actor returns no current-state register extract.

Who uses this

  • Sales and lead generation: every new company (HR01) registered in your cantons, with legal form, purpose, capital and address, pushed into the CRM.
  • Credit and risk analysts: bankruptcies, liquidation calls and composition proceedings by canton, flagging exposure before an invoice goes unpaid.
  • Compliance and KYB teams at banks, insurers and fiduciaries: name, seat, capital and status changes for a watch-list, filtered by UID, so no file is reviewed against stale data.
  • Lawyers and M&A researchers: the full event history of one entity — every HR publication tied to one UID, any date range.
  • Developers and AI agents: a clean JSON feed of Swiss company events, callable from the API, the CLI or an MCP tool.

Example output

A new registration in Ticino, shortened:

{
"publicationNumber": "HR01-1006735012",
"publicationDate": "2026-08-19",
"rubric": "HR",
"subRubric": "HR01",
"subRubricLabel": "New registration",
"cantons": ["TI"],
"title": "Nuove registrazioni AgriEdil Ticino Sagl, Bellinzona",
"companyName": "AgriEdil Ticino Sagl",
"uid": "CHE-396.045.519",
"seat": "Bellinzona",
"legalFormCode": "0107",
"legalFormLabel": "Gesellschaft mit beschränkter Haftung (GmbH/Sàrl/Sagl)",
"purpose": "La società ha per scopo l'esecuzione di lavori edili ...",
"company": {
"address": { "street": "Via al Boschetto 5", "zip": "6514", "town": "Sementina" },
"capitalNominal": "20000.00",
"capitalPaid": "20000.00"
},
"changes": { "nameChanged": false, "seatChanged": false, "others": true },
"transactionType": "registration",
"publicationText": "AgriEdil Ticino Sagl, in Bellinzona, CHE-396.045.519, ... (Nuova iscrizione).",
"language": "it",
"source": "amtsblattportal.ch (SHAB/FOSC/FUSC)"
}

Input

FieldWhat it does
subRubricsPublication types, as sub-codes. Default HR01, HR02, HR03; also KK01KK10, LS01LS05, NA01NA07, SR01SR05, UP01UP05, FM01FM12, AB01/AB02, EK10/EK40.
rubricsWhole rubrics (HR, KK, LS, NA, SR, UP, FM, AB, EK, AW, AZ, ES), used only when subRubrics is empty.
cantonsTwo-letter codes, e.g. ["TI","ZH"]. Empty = all Switzerland.
keywordFull-text filter: company name, town, UID CHE-…, or an industry word.
publishedFrom / publishedUntilDate window (YYYY-MM-DD). Default: the last 7 days.
languagePreferred language for titles (de, fr, it, en). Publication text stays in its original language.
includeContentFetch full text and structured company data. Default true; one extra request per publication.
maxItemsSafety cap. Default 500, 0 = unlimited. The register publishes roughly 900 entries per working day nationwide.

New companies registered in Ticino and Zurich over the last week:

{ "subRubrics": ["HR01"], "cantons": ["TI", "ZH"], "language": "de" }

Every register event for one company, by UID, since the start of the year:

{ "subRubrics": ["HR01", "HR02", "HR03"], "keyword": "CHE-396.045.519", "publishedFrom": "2026-01-01" }

Bankruptcies and creditor calls in French-speaking Switzerland this month:

{ "rubrics": ["KK", "LS"], "cantons": ["GE", "VD", "NE", "FR", "JU", "VS"], "publishedFrom": "2026-08-01" }

Run it on a schedule

Save your filter as a Task, leave the dates empty so each run covers the last seven days, and schedule it daily — the gazette publishes on working days, so a daily run catches every event. Attach an Apify integration to send results where the work happens: Google Sheets, Slack, e-mail, a webhook, Make or Zapier. Deduplicate on publicationId (or publicationNumber) so overlapping windows never action a publication twice.

Use it from code or from an AI agent

Start runs and read the dataset through the Apify API or the apify CLI, and fetch results as JSON, CSV or Excel. The Actor is also exposed as an MCP tool via the Apify MCP server, so an AI agent can ask for Swiss company events — "any bankruptcies in Vaud this week?" — in one tool call.

Pricing

Pay per event: a small fee for each publication exported, shown in the pricing box. Platform usage is negligible — plain API calls, no browser, so no compute bill on top.

Where the data comes from

The public API of amtsblattportal.ch, the official gazette portal of the Swiss Confederation, published under an open licence permitting commercial reuse. The Ordinance on the SHAB (SHABV, Art. 12–13) foresees electronic data subscriptions and reuse by professional data providers, and the Federal Administrative Court (A-4086/2007) confirmed that private re-publication of commercial-register data is lawful.

Honest limits: this is a publication feed, not a register database. You get events published in the window you ask for — not a current-state extract, and nothing predating its appearance in the gazette. Structured company fields exist for commercial-register publications; other rubrics give the official text.

Deliberately excluded: rubrics concerning private individuals — debt enforcement (SB) and private bankruptcies — are not offered in the input selector, for data-protection reasons under the revised Swiss FADP (nDSG). Commercial-register data concerns legal entities and persons registered for business. Respect the gazette's notice in legalRemedy and cite amtsblattportal.ch as the source. This Actor is independent and not affiliated with the Swiss Confederation.

Same engine, same official-source approach: