API Zefix : interroger le registre du commerce suisse et l’IDE

Zefix, l’index central des registres du commerce suisses, a une API REST officielle accessible sur demande, un webservice IDE et des données ouvertes. Voici ce que chacun donne, à quelles conditions, et ce qu’une API JSON commune à 29 pays apporte en plus.

Zefix et l’IDE : ce que le registre offre directement

Zefix est le répertoire central des raisons de commerce suisses. L’Office fédéral du registre du commerce (OFRC), rattaché à l’Office fédéral de la justice (OFJ), le tient et y réunit les inscriptions des registres du commerce cantonaux. Chaque personne morale y porte un IDE, le numéro d’identification des entreprises : CHE et neuf chiffres, par exemple CHE-103.867.266 pour Novartis AG. Le guide Qu’est-ce que Zefix ? détaille le registre, l’IDE et ses statuts.

L’application web de Zefix est conçue pour des consultations individuelles avec des filtres. L’OFJ précise qu’aucun abonnement n’est proposé et qu’il n’est pas possible d’obtenir par cette application la base de données entière, ni une partie de celle-ci.

L’API REST officielle de Zefix

En plus de l’application web, l’OFRC propose une API REST, la Zefix API (Zefix PublicREST). Sa documentation Swagger est publique, mais l’accès se demande : l’OFJ renvoie à l’adresse zefix@bj.admin.ch pour obtenir un accès, et sa page n’indique ni tarif ni conditions détaillées. Sans identifiants, l’API répond 401 et réclame une authentification HTTP Basic. Faits relevés le 16 octobre 2026.

La spécification publiée (version 2.7.2.4) décrit ces routes :

  • POST /api/v1/company/search : recherche par nom (obligatoire), avec en filtres la forme juridique, l’office du registre du commerce, la commune du siège, le canton et activeOnly.
  • GET /api/v1/company/uid/{id}, /company/ehraid/{id} et /company/chid/{id} : la fiche détaillée par IDE, par identifiant interne de l’OFRC ou par CH-ID, un numéro qui n’est plus d’usage public.
  • GET /api/v1/sogc/{id} et /sogc/bydate/{date} : les publications du registre du commerce dans la FOSC (SOGC en anglais), par numéro ou par date.
  • /registryOfCommerce, /legalForm et /community : les listes de référence (offices du registre, formes juridiques, communes).

La fiche détaillée comprend notamment la raison de commerce, l’IDE, le siège, la forme juridique, le statut (actif, en liquidation ou radié), le but, l’adresse, le capital nominal des sociétés de capitaux, les succursales, les reprises, les sociétés de révision, les anciennes raisons de commerce et les publications de la FOSC. La licence annoncée dans la spécification est « OGD Open use. Must provide the source. » : utilisation libre, à condition de citer la source.

# API officielle : identifiants fournis par l'OFRC sur demande
curl -u 'IDENTIFIANT:MOT_DE_PASSE' \
  'https://www.zefix.admin.ch/ZefixPublicREST/api/v1/company/uid/CHE103867266'

curl -u 'IDENTIFIANT:MOT_DE_PASSE' -X POST \
  'https://www.zefix.admin.ch/ZefixPublicREST/api/v1/company/search' \
  -H 'Content-Type: application/json' \
  -d '{"name":"Novartis","activeOnly":true}'

Ces deux appels sont écrits d’après la spécification publique et supposent des identifiants valides ; chacun renvoie un tableau JSON de fiches.

Le webservice du registre IDE

Le registre IDE est tenu par l’Office fédéral de la statistique (OFS). Son site, uid.admin.ch, cherche les entités par nom ou par IDE, avec des filtres (canton, forme juridique, statut au registre du commerce, statut TVA) ; les informations affichées dépendent des droits d’accès. Pour intégrer le registre dans un processus, l’OFS propose le webservice IDE, l’API du registre IDE : une interface SOAP/XML dont les données suivent la norme eCH-0108.

  • Les PublicServices permettent des recherches limitées, sans connexion. La spécification (interface 5.0) y décrit Search (30 entités au plus par recherche), GetByUID, ValidateUID (l’IDE a-t-il été attribué à une entité ?) et ValidateVatNumber (un numéro de TVA n’est valide que lorsqu’il est actif).
  • Les PartnerServices sont réservés aux services administratifs, qui s’y connectent comme « service IDE ».
  • Une limite du nombre de requêtes par minute peut s’appliquer aux PublicServices ; la réponse Request_limit_exceeded l’indique.

L’adresse de production est https://www.uid-wse.admin.ch/V5.0/PublicServices.svc, et le WSDL s’obtient en ajoutant ?wsdl. C’est une voie officielle pour savoir si un numéro de TVA suisse est actif : la Suisse n’est pas dans VIES, que Prometiam interroge pour les numéros de l’Union européenne.

Les données ouvertes de Zefix

L’OFRC publie aussi sur opendata.swiss un jeu de données de base sur les entités juridiques actives (raison sociale, siège, adresse de domicile), actualisé chaque jour et interrogeable en Linked Data avec SPARQL. Les conditions d’utilisation sont « utilisation libre, obligation d’indiquer la source ». Les entités radiées n’y figurent pas.

Quand les voies officielles suffisent

  • Vérifier une société de temps en temps : l’application web de Zefix suffit.
  • Un seul pays, un volume modeste, des identifiants accordés par l’OFRC : l’API REST officielle, dans son format natif.
  • Un tableau de bord sur les entités actives : le jeu de données ouvert.
  • Savoir si un numéro de TVA suisse est actif : le webservice IDE.
  • Un extrait certifié : l’office du registre du commerce du canton, pas une API. Le champ cantonalExcerptWeb de l’API officielle renvoie vers l’extrait du registre cantonal.

Ce que Prometiam ajoute

Prometiam n’est ni une source officielle ni un extrait certifié du registre. Elle sert la fiche de la société suisse dans le même JSON que les 28 autres pays, avec une seule clé et sans demande d’accès à un office, et y ajoute ce que Zefix seul ne donne pas :

  • Un IDE contrôlé. La clé de contrôle (modulo 11) est vérifiée : un IDE faux reçoit une erreur 400 validation_error plutôt qu’une liste vide.
  • Le numéro de TVA. vat= accepte l’IDE suivi de MWST, TVA ou IVA. Le champ vat_number est formé à partir de l’IDE (vat_number_source vaut rule) : le format est juste, mais le registre ne confirme pas l’assujettissement.
  • Les avis de faillite de la FOSC. Les avis de faillite d’entreprises, rattachés à la société par l’IDE lorsque l’avis le nomme (include=insolvency). Voir Qu’est-ce que la FOSC ?.
  • Les changements du registre. Nom, statut, forme juridique, adresse du siège et capital, datés du jour où le changement apparaît pour la première fois dans les données du registre (aucun avant le 30 septembre 2026), et la surveillance avec POST /monitor (webhooks à partir de la formule Professional).
  • Des lots. POST /companies/lookup résout jusqu’à 100 sociétés en un appel, à 1 crédit l’élément.

La requête et un extrait de la réponse, où la liste est dans data :

curl 'https://api.prometiam.com/functions/v1/risk-api/companies/search?country=CH&company_number=CHE-103.867.266' \
  -H 'Authorization: Bearer rk_live_...'
{
  "data": [
    {
      "id": 11000103867266,
      "country": "CH",
      "company_number": "CHE103867266",
      "company_name": "NOVARTIS AG",
      "identifiers": [
        { "type": "uid", "value": "CHE103867266" },
        { "type": "ch_id", "value": "CH27030020612" },
        { "type": "vat", "value": "CHE103867266MWST" }
      ],
      "vat_number": "CHE103867266MWST",
      "vat_number_source": "rule",
      "legal_form": "AG",
      "local_legal_form": "0106",
      "local_legal_form_name": "Aktiengesellschaft",
      "status": "active",
      "address": "LICHTSTR. 35",
      "postal_code": "4056",
      "city": "BASEL",
      "region": "BS",
      "capital_amount": 997061559.41,
      "capital_currency": "CHF",
      "registry_details": { "ch_id": "CH27030020612", "legal_seat": "Basel" }
    }
  ]
}

company_number porte l’IDE sans séparateurs, region le canton (deux lettres) et business_purpose le but de la société, dans la langue de l’inscription cantonale (omis ici). Le même objet sert les 29 pays. Trois autres appels :

# par numéro de TVA : l'IDE suivi de MWST, TVA ou IVA
curl 'https://api.prometiam.com/functions/v1/risk-api/companies/search?country=CH&vat=CHE-103.867.266%20MWST' \
  -H 'Authorization: Bearer rk_live_...'

# une liste de sociétés en un appel
curl -X POST 'https://api.prometiam.com/functions/v1/risk-api/companies/lookup' \
  -H 'Authorization: Bearer rk_live_...' \
  -H 'Content-Type: application/json' \
  -d '{"items":[{"country":"CH","company_number":"CHE-103.867.266"},{"country":"CH","name":"Novartis"}]}'

# surveiller une société
curl -X POST 'https://api.prometiam.com/functions/v1/risk-api/monitor' \
  -H 'Authorization: Bearer rk_live_...' \
  -H 'Content-Type: application/json' \
  -d '{"company_id": 11000103867266, "country": "CH", "webhook_url": "https://votre-app.example/hooks/prometiam"}'

Voies officielles et Prometiam, côte à côte

Voies officiellesPrometiam
AccèsAPI REST : identifiants sur demande à l’OFRC. Webservice IDE : PublicServices sans connexion, recherches limitées. Données ouvertes : utilisation libre, source à citer.Une clé d’API (essai de 14 jours, carte demandée, rien n’est prélevé pendant l’essai).
FormatJSON (API REST), SOAP/XML (webservice IDE), Linked Data (données ouvertes).JSON, le même objet société pour les 29 pays.
Fiche de la sociétéOui : raison de commerce, forme juridique, siège, but, statut, capital, succursales (API REST).Oui : raison de commerce, forme juridique, statut, adresse du siège avec le canton, but, capital. Sans dirigeants.
Publications de la FOSCLes publications du registre du commerce, par numéro ou par date (API REST) ; toutes les rubriques sur shab.ch.Les avis de faillite d’entreprises, rattachés par l’IDE lorsque l’avis le nomme. Ni les concordats, ni les poursuites, ni les inscriptions du registre.
Événements de changementLe texte des publications et leurs types de mutation, sans événement daté prêt à l’emploi.Nom, statut, forme juridique, adresse du siège et capital, datés de leur première apparition dans les données du registre.
SurveillanceAucun mécanisme d’alerte dans la spécification.Oui : POST /monitor.
Numéro de TVAWebservice IDE : ValidateVatNumber, pour savoir si le numéro est actif.vat= retrouve la société par son numéro ; l’assujettissement n’est pas confirmé.
Autres paysNon : la Suisse seulement.29 pays, un seul format.

Ce que la Suisse ne donne pas

  • Pas de dirigeants ni de signataires, pas de signal de conformité au registre, pas de code d’activité : le registre ne publie pas de code NOGA.
  • Seules les personnes morales et les succursales inscrites au registre du commerce sont servies. Les entreprises individuelles et les autres personnes physiques ne le sont jamais : une recherche ne renvoie rien alors que l’entité existe.
  • Le statut distingue la liquidation, que le registre ne marque que dans la raison de commerce, de la radiation (dissolved) ; il n’y a pas de statut de faillite distinct. Les faillites se lisent dans les avis de la FOSC.
  • Un avis de faillite de la FOSC sans IDE reste non rattaché : l’absence d’avis rattaché n’est jamais la preuve qu’une société est saine.
  • Ce n’est pas un extrait certifié du registre du commerce : pour un extrait, adressez-vous à l’office du registre du commerce du canton.

Prix en crédits

Une recherche ou une fiche de société coûte 1 crédit ; les événements ou une recherche d’avis d’insolvabilité, 2 crédits ; une erreur ne coûte rien. Starter (9,99 € par mois) comprend 1 000 crédits, Professional (29,99 €) 10 000, Scale (99,99 €) 50 000. L’essai de 14 jours comprend 500 crédits ; une carte est demandée, rien n’est prélevé pendant l’essai. La lecture des événements demande la formule Starter ou supérieure, et une clé d’essai dispose de 25 appels par mois. La recherche gratuite par IDE exécute le même appel avec une clé partagée.

Source: Zefix, Federal Office of Justice, Federal Commercial Registry Office (open use, source required); restructured by Prometiam, not a certified register extract

Faits relevés le 16 octobre 2026 sur les sites de l’Office fédéral de la justice, de Zefix (spécification OpenAPI de Zefix PublicREST), de l’Office fédéral de la statistique (interfaces IDE, spécification du webservice 5.0) et d’opendata.swiss. La version allemande de cette page est Zefix API.

Pages associées

Démarrez votre essai gratuit de 14 jours · Documentation de l’API

L’essai dure 14 jours et comprend 500 crédits. Une carte bancaire est demandée, rien n’est prélevé pendant l’essai ; ensuite l’offre Starter (9,99 € par mois) s’applique, sauf résiliation.

Frequently asked questions

Existe-t-il une API officielle de Zefix ?
Oui. L’OFRC propose une API REST, Zefix PublicREST, documentée en Swagger. L’accès se demande à l’adresse zefix@bj.admin.ch et passe par une authentification HTTP Basic. La page de l’OFJ n’indique pas de tarif.
L’API Zefix est-elle gratuite ?
L’OFJ ne publie ni tarif ni conditions détaillées sur sa page : demandez-les à l’OFRC. Le jeu de données ouvert de Zefix sur opendata.swiss est d’utilisation libre, à condition de citer la source. L’API de Prometiam est payante, dès 9,99 € par mois, avec un essai de 14 jours.
Comment vérifier un IDE ou un numéro de TVA suisse ?
L’IDE se contrôle par sa clé de contrôle (modulo 11) : Prometiam refuse un IDE faux avec une erreur 400. Pour savoir si un numéro de TVA est actif, le webservice IDE de l’OFS propose ValidateVatNumber ; la Suisse n’est pas dans VIES.
Zefix donne-t-il les dirigeants d’une société suisse ?
La fiche décrite par la spécification de l’API officielle n’en comporte pas, et l’API de Prometiam non plus : elle sert des fiches de société. Pour les personnes inscrites, adressez-vous à l’office du registre du commerce du canton.
Peut-on obtenir un extrait certifié du registre du commerce par API ?
Non. Prometiam sert des données restructurées, pas un extrait certifié. Un extrait s’obtient auprès de l’office du registre du commerce du canton.