Flowie
Conformité · Tous les pays

Qui achemine cette entreprise — dans chaque pays

Avant d'émettre une facture, il faut savoir où elle va — et ce « où » n'est jamais l'entreprise elle-même : c'est la plateforme qui reçoit pour son compte. Chaque pays répond à cette question, mais pas de la même manière, et c'est cette différence qui détermine si la réponse est une recherche ou une liste.

La France répond depuis un registre fermé. La DGFiP immatricule un ensemble fini de Plateformes Agréées et l'annuaire du PPF achemine sur un matriculePlateforme à quatre chiffres. Ce numéro ne veut rien dire seul : la réponse est donc une jointure — que personne ne publiait avant que nous le fassions.

Peppol répond en direct. Il n'existe aucun registre de plateformes agréées à consulter : c'est l'identifiant du participant lui-même qui se résout, par DNS puis par HTTP, jusqu'au point d'accès qui le dessert — et le certificat de ce point d'accès nomme la société qui l'exploite. Aucune liste à maintenir, et jamais périmée.

pays couverts
participants Peppol, mesurés
avec un registre d'opérateurs
résolvables en direct

Résoudre un identifiant

Donnez un identifiant de participant Peppol — schéma:valeur, par exemple 0208:0848934496 (Belgique) ou 0192:991825827 (Norvège) — et cette interrogation demande au réseau qui l'achemine, maintenant.

Qui achemine ce participant ?

Appelle GET /v1/portability/access-point/{participantId}. Votre clé reste dans ce navigateur et n'est envoyée nulle part ailleurs qu'à l'API.

Tous les pays

Le nombre de participants et les schémas d'identifiants sont mesurés, pas affirmés : chaque ligne provient d'une interrogation de l'annuaire Peppol pays par pays, en comptant les schémas réellement utilisés par les inscriptions existantes. Un pays affiché à zéro n'a aucune inscription — ce n'est pas un pays que nous aurions omis d'interroger.

Chargement de l'annuaire…
Pays Participants Schémas d'identifiants utilisés Registre d'opérateurs

Comment la réponse en direct est obtenue

Trois sauts, et c'est le dernier qui nomme réellement une société :

  1. SML — DNS. L'identifiant est mis en minuscules, haché en SHA-256, encodé en Base32, puis interrogé en NAPTR. Le champ regexp de l'enregistrement nomme le SMP qui dessert le participant : "!.*!https://smp.example.net!".
  2. SMP — HTTP. GET <smp>/iso6523-actorid-upis::<id> énumère tous les types de documents que le participant accepte, chacun renvoyant vers ses propres métadonnées de service.
  3. Le certificat du point d'accès. Ces métadonnées portent le certificat X.509 du point d'accès, et son sujet est la réponse : CN=POP000016, OU=PEPPOL PRODUCTION AP, O=B2Brouter Global SL, C=ES. O est la raison sociale, CN l'identifiant Peppol du point d'accès.

La zone a changé, et une documentation périmée ne mène nulle part. OpenPeppol a retiré edelivery.tech.ec.europa.eu en même temps que l'ancien schéma CNAME/MD5 ; la production est passée à participant.sml.prod.tech.peppol.org en NAPTR/SHA-256 le 19 mars 2026. Interroger la zone retirée renvoie NXDOMAIN pour tous les participants du réseau — ce qui ressemble exactement à « personne ne les achemine ». Les deux schémas sont tentés ici, et la réponse indique lequel a répondu.

Une conséquence à garder en tête : le pays du point d'accès n'est fréquemment pas celui de l'entreprise. Une société belge acheminée par un opérateur espagnol, une suédoise par un finlandais — c'est normal, et cela rappelle utilement que le marché des plateformes est européen plutôt que national.

Là où un registre existe

Quelques pays immatriculent les opérateurs et publient la liste. Le schéma français s'y applique — un nom, un statut, et généralement un code — et la réponse peut être une page plutôt qu'une recherche :

PaysCe que l'autorité immatricule

La France est le seul cas traité en entier — les 166 Plateformes Agréées jointes au matricule sur lequel chacune achemine, avec la preuve de chaque numéro. Les autres sont listés pour que vous sachiez qu'un registre existe ; nous ne les avons pas intégrés.

Depuis l'API

# qui achemine cette société belge ?
curl -H "X-API-Key: $FLOWIE_API_KEY" \
  https://api.get-flowie.com/v1/portability/access-point/0208:0848934496

# la France, depuis le registre
curl -H "X-API-Key: $FLOWIE_API_KEY" \
  https://api.get-flowie.com/v1/portability/annuaire/350422622

# et qui se cache derrière un matricule français
curl -H "X-API-Key: $FLOWIE_API_KEY" \
  "https://api.get-flowie.com/v1/portability/platforms?matricule=0003"

La réponse du point d'accès porte apName, apPeppolId, apCountry, smpUrl, endpointUrl, transportProfile, documentTypeCount, certificateExpiresOn et resolvedVia. Un participant que personne n'achemine répond 200 avec error renseigné, et non 404 : « non inscrit » est une réponse, pas un échec.

Le tableau ci-dessus lit un fichier statique — assets/routing-directory.json — si vous voulez la cartographie par pays sans rien appeler.

Références