API Zefix : interroger les données du registre du commerce

Zefix est l’index central des raisons de commerce de la Suisse, exploité par l’Office fédéral du registre du commerce (OFRC) au sein de l’Office fédéral de la justice. Outre la recherche dans le navigateur, Zefix existe comme interface REST, la « Zefix PublicREST API ». Une application y obtient directement du registre du commerce la raison sociale, le siège, la forme juridique, le statut et le but. Ce guide montre l’accès, les requêtes et la réponse, et quand le registre IDE est le choix le plus simple.

Déroulement d’une requête Zefix : votre application interroge Zefix PublicREST avec nom d’utilisateur et mot de passe sur un IDE ou un nom et reçoit les données du registre du commerceVotre applicationIDE ou raisonsocialeZefix PublicRESTConnexion avecnomd’utilisateuret mot de passeRegistre ducommerceNom, siège,formejuridique,statut, butVotre applicationRemplir leformulaire ouvérifier leclientDéroulement d’une requête Zefix : votre application interroge Zefix PublicREST avec nom d’utilisateur et mot de passe sur un IDE ou un nom et reçoit les données du registre du commerceVotre applicationIDE ou raison socialeZefix PublicRESTConnexion avec nom d’utilisateur et motde passeRegistre du commerceNom, siège, forme juridique, statut,butVotre applicationRemplir le formulaire ou vérifier leclient

Ce que fournit l’API Zefix

L’interface se trouve sous https://www.zefix.admin.ch/ZefixPublicREST. La description des endpoints est dans l’interface Swagger, lisible par machine en OpenAPI sous /v3/api-docs. Les endpoints principaux :

  • GET /api/v1/company/uid/{id} : entreprise par IDE
  • POST /api/v1/company/search : recherche par nom, forme juridique, siège ou canton
  • GET /api/v1/sogc/bydate/{date} : publications d’un jour dans la Feuille officielle suisse du commerce (FOSC)
  • GET /api/v1/legalForm et GET /api/v1/community : listes des formes juridiques et des communes

Les données sont soumises à la condition « Open use », avec l’obligation d’indiquer la source.

Étape 1 : demander un accès

Les requêtes sont gratuites mais demandent un compte. L’OFRC attribue l’accès sur demande par e-mail à zefix@bj.admin.ch ; le nom d’utilisateur est une adresse e-mail. L’authentification se fait par HTTP Basic Auth, donc avec nom d’utilisateur et mot de passe à chaque requête. Obtenir les identifiants peut prendre quelques jours, mieux vaut donc les demander tôt.

Étape 2 : chercher une entreprise par IDE

L’IDE figure dans le chemin sans points ni tiret :

curl -u "utilisateur@example.ch:motdepasse" \
  https://www.zefix.admin.ch/ZefixPublicREST/api/v1/company/uid/CHE107721785

La réponse est une liste, pas un objet unique. Si l’IDE n’est pas au registre du commerce, Zefix répond 404.

Étape 3 : chercher une entreprise par nom

La recherche attend le début de la raison sociale, au moins trois caractères, avec * comme joker :

{
  "name": "Exemple*",
  "canton": "VD",
  "activeOnly": true
}

Elle se comporte comme la recherche exacte sur le site de Zefix. activeOnly masque les entreprises radiées. Les résultats arrivent sous forme courte ; les données complètes viennent ensuite d’une requête par IDE.

Ce que contient la réponse

  • name, uid, legalSeat (commune du siège) et canton
  • legalForm avec le code selon eCH-0097
  • status : ACTIVE active, BEING_CANCELLED en liquidation, CANCELLED radiée, avec deletionDate
  • purpose, le but inscrit au registre du commerce
  • address avec rue, numéro, code postal et localité
  • capitalNominal et capitalCurrency pour les sociétés de capitaux
  • sogcPub avec les publications FOSC et oldNames avec les anciennes raisons sociales
  • cantonalExcerptWeb, le lien vers l’extrait du registre du commerce cantonal

Zefix ou registre IDE ?

Zefix ne connaît que les entreprises inscrites au registre du commerce. Le registre IDE de l’Office fédéral de la statistique connaît chaque entreprise ayant un IDE, y compris les entreprises individuelles et associations non inscrites, et montre l’inscription au registre TVA. Son interrogation publique ne demande pas de compte.

Pour savoir si un IDE saisi dans le checkout est valable et l’entreprise active, le registre IDE suffit donc. Zefix vaut la peine quand le but, le capital, les anciennes raisons sociales ou les publications sont nécessaires. Le contrôle via le registre IDE est expliqué dans le guide vérifier un numéro IDE.

Pièges

  • Écriture de l’IDE : dans le chemin sans séparateurs (CHE107721785), à l’affichage avec (CHE-107.721.785). Normaliser avant la requête.
  • Liste au lieu d’objet : même la requête par IDE renvoie une liste.
  • Liquidation : BEING_CANCELLED n’est pas encore radiée, mais n’est plus un partenaire commercial ordinaire. Votre application doit décider comment la traiter.
  • Identifiants : nom d’utilisateur et mot de passe restent sur le serveur. Un appel depuis le navigateur les montrerait à chaque visiteur.
  • Mise en cache : les données d’entreprise changent rarement. Garder les réponses un moment plutôt que d’interroger à chaque affichage de page.

Prêt pour la boutique

Pour vérifier les IDE dans le checkout WooCommerce, pas besoin de code maison : mon plugin Contrôle IDE vérifie format, chiffre de contrôle et statut dans le registre IDE, sans compte ni clé.

Tous les guides