Company records in Switzerland
Your agent looks up companies in Switzerland through Swiss Company Data. The data comes from Zefix PublicREST API (Federal Office of Justice, Switzerland).
Swiss Company Data
Look up a Swiss company in Zefix, the Federal Office of Justice register, by UID, EHRA ID or name.
- Source
- Zefix PublicREST API (Federal Office of Justice, Switzerland)
- Price per call
- €0.05 · x402 $0.054
- Returns
- Name and number, Status, Address
- Last recorded test
- 5 Nov 2026, 100% of its tests passed on their latest run
- Method
- Computed by fixed rules and lookups; no AI model writes the answer.
What your agent sends
| Field | Type | Required | What it is |
|---|---|---|---|
uid | string | No | Swiss UID (CHE-xxx.xxx.xxx) or EHRAID |
company_name | string | No | Company name. Zefix matches diacritics literally, so use the exact registered spelling (e.g. "Nestlé"). Accepted only on a confident name match. |
Example answer
{
"uid": "CHE105805977",
"ch_id": null,
"canton": "VD",
"ehraid": 218570,
"status": "ACTIVE",
"address": "Avenue Nestlé 55, 1800 Vevey",
"purpose": null,
"legal_form": "Association",
"data_source": "Zefix, Federal Office of Justice, Switzerland",
"company_name": "Nestlé SA",
"municipality": "Vevey",
"data_source_url": "https://www.zefix.admin.ch/",
"data_attribution": "Data from Zefix, Federal Office of Justice, Switzerland",
"registration_date": null
} Fields that come back
| Field | Type | Appears |
|---|---|---|
uid | string | Always (present in every successful answer) |
ch_id | integer | Usually (present for most inputs) |
canton | string | Usually (present for most inputs) |
ehraid | integer | Always (present in every successful answer) |
status | string | Always (present in every successful answer) |
address | string | Usually (present for most inputs) |
purpose | string | Sometimes (present only for some inputs) |
legal_form | string | Always (present in every successful answer) |
vat_number | string or null | Not stated |
data_source | string | Always (present in every successful answer) |
company_name | string | Always (present in every successful answer) |
municipality | string | Usually (present for most inputs) |
deletion_date | string | Sometimes (present only for some inputs) |
legal_form_id | integer | Always (present in every successful answer) |
data_source_url | string | Always (present in every successful answer) |
data_attribution | string | Always (present in every successful answer) |
registration_date | string | Usually (present for most inputs) |
How to call it
# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
-H "Authorization: Bearer $STRALE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"capability_slug": "swiss-company-data",
"inputs": {
"uid": "CHE-101.602.521"
},
"max_price_cents": 5
}' {
"tool": "strale_execute",
"arguments": {
"slug": "swiss-company-data",
"inputs": {
"uid": "CHE-101.602.521"
},
"max_price_cents": 5
}
} import { Strale } from "straleio";
const strale = new Strale({ apiKey: process.env.STRALE_API_KEY! });
const result = await strale.do({
capability_slug: "swiss-company-data",
inputs: {
"uid": "CHE-101.602.521"
},
max_price_cents: 5,
}); import os
from straleio import Strale, DoRequest
strale = Strale(api_key=os.environ["STRALE_API_KEY"])
result = strale.do(DoRequest(
capability_slug="swiss-company-data",
inputs={
"uid": "CHE-101.602.521",
},
max_price_cents=5,
)) # No account. The first request answers 402 with the price in USDC;
# an x402 client pays it from your wallet and repeats the request.
curl -i 'https://api.strale.io/x402/v2/swiss-company-data?uid=CHE-101.602.521' Limitations
Financial data not available
The Zefix API provides registry data only. Detailed financial statements and annual reports are not publicly available through this API.
What to do instead: Use the UID from the response to order a certified extract from the cantonal Handelsregisteramt
Purpose field may be absent
The company purpose (Zweck) is not always included in API responses, particularly for older registrations.
Address limited to registered office
Only the registered office (Sitz) address is returned. Branch office addresses require separate lookups.
Bundled checks for Switzerland
- Company check €1.50
- Full check €2.50
- Invoice-issuer check €2.50
Screen the company or its people
Results are matches for a person to review, not a verdict.
- Sanctions Check €0.20
- PEP Check €0.05
- Adverse Media Check €0.20