API · v1
Annonces légales & Guichet Unique

Nos formalités,
dans votre outil.

Publier une annonce légale, monter un dossier au Guichet Unique, déposer des comptes : vos utilisateurs le font depuis votre logiciel, sans jamais en sortir. Deux API, des widgets prêts à embarquer, un environnement de test.

— REST
JSON, clé en en-tête
— Widgets
URL signées, à embarquer
— Test
Environnement dédié
POST /api/annonce-legale-v1/authenticate JSON
// requête
{ "apiKey": "sk_live_…" }

// réponse 200
{
  "success": true,
  "company": {
    "publicId": "cmp_7f31a9…",
    "denomination": "CABINET MERCIER",
    "siren": "812345678"
  },
  "wallet": { "balance": 1840.00, "jetons": 36 }
}

Première requête · 30 secondes

À qui

Vous n'avez pas à
construire la formalité.

Vous la branchez. Les journaux habilités, le Guichet Unique, la conformité des textes et le paiement restent de notre côté ; l'expérience reste du vôtre.

Vous éditez un logiciel utilisé par des cabinets

Vos utilisateurs — avocats, experts-comptables, notaires, formalistes — vous réclament l'annonce légale et le dépôt au Guichet Unique. Vous les leur donnez sans négocier avec les journaux, sans brancher l'INPI et sans écrire une ligne de droit.

Éditeurs · Plateformes

Vous passez du volume avec votre propre outil

Tout est déjà saisi chez vous. L'API supprime la ressaisie : le dossier part en publication ou au Guichet Unique depuis l'écran où il se trouve déjà, et le statut revient par webhook dans votre base.

Cabinets · Services formalités

Vous voulez proposer la formalité sous votre marque

Les widgets s'embarquent dans vos pages et adoptent votre parcours. Vos clients ne voient que vous ; l'encaissement peut passer par votre propre compte de paiement.

Marque blanche
01 · Annonce légale

Publier une annonce,
depuis votre écran.

Deux façons de l'intégrer, selon le temps que vous voulez y passer. Les deux partent de la même clé API.

Chemin A · Widgets embarqués

Trois widgets, trois iframes.

Vous appelez notre API, vous recevez une URL signée à durée limitée, vous l'affichez. La saisie, les contrôles de conformité et le calcul du tarif restent chez nous ; le retour se fait sur l'URL de callback que vous avez fournie.

  • /widget/types — le choix du type d'annonceConstitution, transfert de siège, changement de gérant…
  • /widget/form — la saisie de l'annonceFormulaire conforme au type choisi, génération assistée par IA depuis vos documents
  • /widget/order — la commande et le paiementJournal, date de parution, estimation du tarif, encaissement
POST /api/annonce-legale-v1/widget/types
// en-tête : X-Api-Key: sk_live_…
{
  "callBackUrl": "https://votre-app.fr/annonce/retour",
  "webhookUrl": "https://votre-app.fr/hooks/lgdf"
}

// réponse 200
{
  "success": true,
  "embedUrl": "https://…/embed/annonce-legale/types?…&signature=…",
  "expiresAt": "2026-08-01T14:32:11+02:00"
}
Chemin B · Intégration backend

Aucun écran de notre côté.

Vous pilotez tout depuis votre serveur : vous transmettez l'annonce, vous choisissez le journal et la date, vous payez sur votre portefeuille et vous récupérez le certificat de parution en PDF.

  • POST /authenticate — la clé et le soldeVous vérifiez l'identité de la société et son portefeuille
  • GET /types — les types d'annonce disponibles
  • POST /generate — le texte de l'annonceRédigé par vous, ou généré à partir des documents que vous envoyez
  • PATCH /order/{id}/config — journal, département, dateAvec l'estimation du tarif avant paiement
  • POST /order/pay — le paiement et la transmission au journal
  • GET /order/{id}/certificate — le certificat PDF
POST /api/annonce-legale-v1/order/pay
// en-tête : X-Api-Key: sk_live_…
{
  "commandePublicId": "cmd_9f2e41…",
  "paymentMethod": "wallet"
}

// réponse 200 — payée et transmise au journal
{
  "success": true,
  "commande": {
    "statut": "publiee",
    "pricePaye": 193.20,
    "publicationDate": "2026-08-04",
    "journalNom": "…"
  }
}
// 402 si le solde est insuffisant (walletBalance, required)
Une précision, pour éviter la mauvaise surprise en intégration : la structure détaillée de nos formulaires n'est pas exposée par l'API — c'est un choix assumé. En intégration backend, vous transmettez le texte de l'annonce (le vôtre, ou celui que nous générons à partir de vos documents). Si vous voulez le formulaire complet avec ses contrôles, c'est le widget qui le porte.

URL signées et expirantes

Chaque widget est délivré sous signature HMAC avec une date d'expiration. Une URL interceptée ne se rejoue pas.

Webhooks signés

Chaque étape du parcours vous est notifiée avec une signature vérifiable et la donnée libre que vous nous aviez confiée.

Portefeuille ou Stripe Connect

Vous payez sur un portefeuille prépayé, ou vous encaissez vous-même votre client via votre compte Stripe Connect.

Certificat de parution

Le PDF opposable est récupérable par API dès la publication, sous le même jeton que le reste du parcours.

Le journal du bon département

Nous résolvons le journal habilité, la date de parution possible et le tarif réglementé applicable.

Historique des commandes

Toutes les commandes passées sous votre clé sont listables et consultables une par une, avec leur statut.

02 · Guichet Unique

Le dossier INPI,
monté par votre outil.

Interroger le répertoire, pré-remplir un dossier, déposer des comptes annuels, récupérer les documents. En REST, avec votre clé en en-tête.

/api/automation/guichet-unique API-KEY
GET /company/{siren} L'entreprise depuis le répertoire de l'INPI : dénomination et siège, à partir des 9 chiffres du SIREN.
GET /legal-forms/creation Les formes juridiques prises en charge à la création, avec leur code officiel.
POST /draft/create Un brouillon pré-rempli déposé sur le Guichet Unique, prêt à être relu et signé.
POST /depot-comptes Le dépôt des comptes annuels, y compris la demande de confidentialité.
GET /all-documents Tous les documents rattachés au dossier, classés et récupérables.
GET /tokens/transactions L'historique de consommation, pour refacturer ou pour piloter votre budget.
GET /test-connection La vérification des identifiants Guichet Unique, avant toute écriture.
SAS SASU SARL EURL SA SCI SELARL Sociétés civiles

Formes juridiques prises en charge à la création

GET /company/552100554 REST
// en-tête : API-KEY: sk_live_…

// réponse 200
{
  "success": true,
  "mode": "live",
  "entreprise": {
    "siren": "552100554",
    "denomination": "…",
    "siege": {
      "adresse_ligne_1": "…",
      "code_postal": "75009",
      "ville": "PARIS",
      "pays": "France"
    }
  }
}

Le brouillon pré-rempli

C'est l'endpoint qui fait gagner le plus de temps : le dossier arrive monté sur le Guichet Unique, il ne reste qu'à le relire et à le signer.

03 · Mise en route

De la clé de test
à la production.

Les deux environnements sont cloisonnés et les appels sont identiques. Passer en production, c'est changer de clé.

Étape 01

On vous ouvre un compte et une clé de test

Vous appelez les deux API dans un environnement dédié, sans engagement et sans mouvement d'argent réel.

Étape 02

Vous intégrez, avec la documentation et un interlocuteur

Documentation en ligne, exemples de requêtes prêts à copier, et quelqu'un qui connaît le code au bout du fil — pas un formulaire de support.

Étape 03

On recette ensemble sur votre environnement

On déroule un parcours complet chez vous : publication, callback, webhook, certificat. On corrige les cas limites avant qu'ils ne coûtent quelque chose.

Étape 04

Bascule en production

Nouvelle clé, mêmes appels, même code. La clé de test reste active pour vos environnements de recette.

Ce qui est prévu côté sécurité
  • Clé en en-tête HTTPJamais dans l'URL, jamais dans un paramètre de requête.
  • Widgets signés et expirantsSignature HMAC sur les paramètres, durée de validité courte.
  • Environnements cloisonnésUne clé de test refusée en production, et l'inverse.
  • Erreurs normaliséesUn code, un libellé lisible et un statut HTTP cohérent sur toutes les routes.
  • Webhooks vérifiablesEnvoi unique et signé : votre point de réception doit être idempotent.
Parlons intégration

Dites-nous ce que
vous voulez brancher.

Décrivez votre outil et votre volume. On revient vers vous avec la clé de test, la documentation et le chemin d'intégration qui correspond — pas avec une plaquette.

  • Vous parlez à quelqu'un qui a écrit l'API, pas à un commercial.
  • Aucune carte bancaire demandée pour obtenir la clé de test.
  • La documentation complète des deux API vous est ouverte dès le premier échange.
  • Vos informations servent à préparer l'intégration, et à rien d'autre.

Demander un accès API

Les champs marqués d'une astérisque sont nécessaires pour vous répondre utilement.

API qui vous intéresse *
Volume mensuel estimé

En envoyant ce formulaire, vous acceptez que nous vous recontactions au sujet de votre projet d'intégration. Vos données ne sont ni revendues ni utilisées pour autre chose.

Demande envoyée.

Nous revenons vers vous avec la clé de test et la documentation des API que vous avez cochées.