Aller au contenu

Ironfang Finance - Référence des règles

PEPPOL-EN16931-CL008 : Utiliser un code de schéma d'adresse électronique Peppol dans EndpointID

Le schemeID de chaque cbc:EndpointID doit correspondre exactement à un code de la liste Peppol des schémas d'adresse électronique, comme 0088 pour un GLN.

Peppol BIS BillingErreur : le document n'est pas valideListes de codesParties et adresses

Sur cette page

La réponse courte

PEPPOL-EN16931-CL008 échoue lorsque le schemeID d'un cbc:EndpointID n'est pas, caractère pour caractère, l'un des codes de schéma que Peppol accepte pour les adresses électroniques. Dans l'exemple enregistré, l'adresse du vendeur est marquée GLN ; le code d'un GLN est 0088.

La règle EN 16931 BR-CL-25 teste le même attribut par rapport à la liste EAS. Une valeur qu'aucune des deux listes ne contient, comme GLN, est signalée par les deux règles. Chaque code de la liste Peppol figure aussi dans la liste EAS : un code que Peppol accepte satisfait donc les deux.

Ce que la règle vérifie

La règle s'exécute sur chaque cbc:EndpointID qui a un attribut schemeID, et le constat pointe vers cet élément. Un cbc:EndpointID sans l'attribut est laissé à BR-62 et BR-63.

L'attribut doit être exactement égal à un code de la liste. Rien n'est tronqué et la casse n'est pas normalisée : lors d'un essai, schemeID=" 0088 " a échoué à cette règle alors que l'étape EN 16931 a réussi.

La liste Peppol est plus restreinte que la liste EAS figée pour BR-CL-25. Des codes comme 0037, 0147 et 0212, et les codes alphabétiques AN, AQ, AS, AU et EM, figurent dans la liste EAS et pas dans la liste Peppol. Lors d'un essai, schemeID="0037" a réussi l'étape EN 16931 et échoué à cette seule règle.

La valeur de l'identifiant n'est pas lue ici. Les contrôles de format propres à certains schémas sont des règles distinctes, comme PEPPOL-COMMON-R040 pour la clé de contrôle du GLN sous 0088.

TermeSignificationÉlément UBL
BT-34Adresse électronique du vendeur : son attribut d'identifiant de schémacac:AccountingSupplierParty/cac:Party/cbc:EndpointID/@schemeID
BT-49Adresse électronique de l'acheteur : son attribut d'identifiant de schémacac:AccountingCustomerParty/cac:Party/cbc:EndpointID/@schemeID

Comment une intégration en arrive là

Causes possibles, déduites de la forme de la règle et non d'une utilisation mesurée :

  • Le mapping écrit un nom de schéma, comme GLN, là où le code numérique est attendu.
  • Un code pris dans la liste EAS est valide pour EN 16931 mais ne fait pas partie des schémas que Peppol accepte.
  • Un export à largeur fixe complète l'attribut avec des espaces.
  • Le code a été stocké comme un nombre et a perdu ses zéros en tête, ce qui donne 88.
  • Le code ISO 6523 d'un identifiant de partie a été copié dans l'adresse électronique, et tous ces codes ne sont pas des schémas d'adresse électronique.

Comment corriger le document

  1. Utilisez l'emplacement du constat pour savoir si c'est le cbc:EndpointID du vendeur ou celui de l'acheteur qui est concerné.
  2. Prenez le schéma dans l'enregistrement Peppol de ce participant. Un identifiant de participant Peppol se compose d'un code de schéma et d'un identifiant, et schemeID doit être ce code de schéma.
  3. Écrivez le code exactement comme dans la liste, sur quatre chiffres avec les zéros en tête pour les codes numériques, et sans espaces.
  4. Corrigez le schéma dans les données de partie stockées plutôt que seulement dans le XML, afin que les contrôles EN 16931 et Peppol voient la même valeur.

Valider votre facture corrigée

Avant et après

Ce sont des extraits, pas des documents complets. Les documents synthétiques complets dont ils proviennent sont liés ci-dessous.

Fragment de la facture en échec : l'adresse électronique du vendeur est marquée GLN

<cac:AccountingSupplierParty>
  <cac:Party>
    <cbc:EndpointID schemeID="GLN">7300010000001</cbc:EndpointID>
    <!-- postal address, tax scheme and legal entity omitted from this fragment -->
  </cac:Party>
</cac:AccountingSupplierParty>

Fragment de la facture corrigée : l'adresse électronique du vendeur utilise le schéma 0088

<cac:AccountingSupplierParty>
  <cac:Party>
    <cbc:EndpointID schemeID="0088">7300010000001</cbc:EndpointID>
    <!-- postal address, tax scheme and legal entity omitted from this fragment -->
  </cac:Party>
</cac:AccountingSupplierParty>

Seul le schéma du cbc:EndpointID du vendeur diffère : GLN dans la facture en échec, 0088 dans la facture corrigée, l'identifiant 7300010000001 restant inchangé. Le document en échec signale aussi BR-CL-25 dans l'étape EN 16931, le contrôle de la liste EAS sur le même attribut, car GLN ne figure dans aucune des deux listes. Une seule correction lève les deux constats.

Ce que le validateur a signalé

Enregistré avec phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, le moteur du validateur gratuit, sur des données synthétiques. Un résultat enregistré est une preuve de non-régression pour ces documents ; ce n'est pas une certification.

Où la règle s'applique

  • Facture ou avoir, cela ne change rien. Lors d'un essai, un avoir avec GLN comme schéma du vendeur a signalé la même paire de constats, tout comme une facture avec GLN sur l'adresse de l'acheteur.
  • Une règle Peppol BIS Billing 3.0, signalée dans l'étape Peppol. La liste de codes est celle de la version figée de mai 2026.
  • Un schéma de la liste montre que l'adresse est exprimée sous une forme que Peppol reconnaît. Le validateur ne recherche pas le participant ; il ne peut donc pas confirmer que l'adresse est enregistrée ou joignable.

Portée et source

Rédigé pour Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, tel qu'appliqué aux documents Invoice et CreditNote en UBL 2.1. D'autres profils, syntaxes et versions peuvent définir cet identifiant autrement. Version du catalogue d'aide 2026-09-24.1 : source vérifiée le 2026-09-24, explication mise à jour le 2026-09-24.

La définition officielle de PEPPOL-EN16931-CL008 (en anglais) contient le texte normatif et le test. Cette page en est notre explication, pas une copie.

Cette aide ne modifie pas le verdict du moteur. Corriger ce constat ne signifie pas que le document passe toutes les étapes de validation, et la validation ne certifie pas la conformité juridique ou fiscale et ne transmet aucun document via Peppol.