Aller au contenu

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

BR-62 : Ajouter l'attribut schemeID à l'adresse électronique du vendeur

Lorsque la partie vendeur a un cbc:EndpointID, l'élément doit porter un attribut schemeID indiquant le schéma auquel appartient l'adresse.

EN 16931Erreur : le document n'est pas valideParties et adresses

Sur cette page

La réponse courte

BR-62 échoue lorsque cac:AccountingSupplierParty/cac:Party/cbc:EndpointID est écrit sans attribut schemeID. L'identifiant seul est ambigu : 7300010000001 pourrait être un GLN, un numéro d'organisation national ou autre chose. Ajoutez schemeID avec le code du schéma sous lequel l'adresse du vendeur a été attribuée.

Ce que la règle vérifie

La règle porte sur le cbc:EndpointID du vendeur et contrôle une seule chose : que l'attribut schemeID y existe. Si le vendeur n'a aucun cbc:EndpointID, la règle n'a rien sur quoi s'exécuter et ne signale rien ; Peppol signale l'élément manquant par PEPPOL-EN16931-R020.

La valeur de l'attribut n'est pas lue. schemeID="" satisfait BR-62, et le code vide est ensuite rejeté par BR-CL-25 à l'étape EN 16931 et par PEPPOL-EN16931-CL008 à l'étape Peppol.

Le contenu de l'élément n'est pas lu non plus. Un cbc:EndpointID vide sans attribut signale BR-62 avec PEPPOL-EN16931-R008, la règle Peppol contre les éléments vides.

TermeSignificationÉlément UBL
BT-34Adresse électronique du vendeurcac:AccountingSupplierParty/cac:Party/cbc:EndpointID
BT-34Adresse électronique du vendeur : son attribut d'identifiant de schémacac:AccountingSupplierParty/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 système source stocke l'adresse électronique sous forme d'une seule chaîne, et le mapping l'écrit comme contenu de l'élément sans attribut.
  • Le schéma et l'identifiant sont stockés ensemble, par exemple 0088:7300010000001, et le découpage qui devrait alimenter schemeID manque ou a échoué pour ce vendeur.
  • Le sérialiseur omet les attributs dont la valeur est nulle, et la colonne du schéma est vide pour ce vendeur.
  • Le code est écrit dans un autre attribut, comme schemeAgencyID. La règle ne regarde que schemeID, et l'attribut égaré ajoute l'avertissement UBL-DT-27.

Comment corriger le document

  1. Déterminez à quel schéma appartient l'adresse du vendeur. C'est une propriété de l'identifiant, fixée lorsque le vendeur l'a obtenu : 0088 pour un GLN, un code national pour un numéro d'organisation ou de TVA. Ne choisissez pas un code parce qu'il passe la validation.
  2. Conservez le code de schéma dans un champ distinct, à côté de l'identifiant, dans la configuration du vendeur.
  3. Écrivez-le dans l'attribut schemeID de cac:AccountingSupplierParty/cac:Party/cbc:EndpointID, orthographié exactement ainsi.
  4. Vérifiez le code par rapport à la liste de codes EAS avant l'envoi ; BR-CL-25 le contrôle dès que l'attribut existe.

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'EndpointID du vendeur a une valeur et pas de schemeID

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

Fragment de la facture corrigée : schemeID indique le schéma de l'identifiant

<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>

Le fichier corrigé a schemeID="0088" sur le cbc:EndpointID du vendeur ; le fichier en échec a le même élément et la même valeur sans attribut. Le document en échec ne signale que BR-62. Son étape Peppol passe : sans schemeID, il n'y a pas de code de schéma que la règle Peppol de liste de codes pourrait rejeter.

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

  • S'applique à UBL Invoice et CreditNote ; un avoir dont l'attribut a été supprimé signale le même constat unique.
  • Seule la partie vendeur est couverte. Le cbc:EndpointID de l'acheteur a sa propre règle, BR-63, et un document auquel manquent les deux attributs signale les deux.
  • C'est une règle EN 16931, elle est donc signalée à l'étape EN 16931 même si, sous Peppol, l'élément qu'elle examine est obligatoire.

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-20.

La définition officielle de BR-62 (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.