Sur cette page
La réponse courte
PEPPOL-EN16931-P0101 échoue lorsque le cbc:CreditNoteTypeCode d'un CreditNote n'est pas l'un des cinq codes que Peppol BIS Billing autorise pour les avoirs. Pour un avoir ordinaire, écrivez 381.
Un code de facture dans un avoir, comme le 380 de l'exemple enregistré, échoue aussi au contrôle de liste de codes EN 16931 BR-CL-01. Si le document est réellement une facture, construisez un document Invoice plutôt que de changer le code.
Ce que la règle vérifie
La règle lit cbc:CreditNoteTypeCode, retire les espaces autour et accepte exactement 381 (avoir), 396 (avoir affacturé), 81 (avoir relatif à des biens ou services), 83 (avoir relatif à des ajustements financiers) et 532 (avoir du transitaire).
EN 16931 autorise davantage de codes d'avoir que Peppol. Lors d'un essai, 261 a réussi BR-CL-01 et échoué à cette seule règle.
Un code du côté facture d'UNTDID 1001 échoue aux deux listes. Lors d'un essai, 380, 383 et 384 dans un avoir ont chacun signalé cette règle avec BR-CL-01.
Comme son équivalent pour les factures, la règle ne s'exécute que pour un identifiant de processus métier reconnu. Un avoir portant 380 sous un cbc:ProfileID non reconnu a signalé BR-CL-01 et PEPPOL-EN16931-R007, mais pas cette règle.
| Terme | Signification | Élément UBL |
|---|---|---|
| BT-3 | Code de type de facture | cbc:CreditNoteTypeCode |
| BT-23 | Type de processus métier | cbc:ProfileID |
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 :
- Dans le système source, un seul champ de code de type sert aux deux documents et contient
380pour tout, tandis que l'élément racine est choisi selon le signe du total. - Une facture rectificative (
384) ou une note de débit (383) est émise commeCreditNoteparce que ses montants sont négatifs. - La table de codes des avoirs a été copiée de la liste EN 16931 plutôt que du sous-ensemble Peppol.
Comment corriger le document
- Confirmez que le document est un avoir, c'est-à-dire qu'il réduit ou annule un montant facturé précédemment. Si c'est le cas, gardez la racine
CreditNoteet utilisez381, ou396,81,83ou532si l'un d'eux le décrit mieux. - Si la source indique que le document est une facture, générez plutôt un
Invoiceaveccbc:InvoiceTypeCode. Les éléments de ligne et de quantité portent des noms différents dans les deux documents : c'est donc une sortie différente, pas une racine renommée. - Dérivez le code de type et l'élément racine du même champ source, afin qu'ils ne puissent pas se contredire.
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 l'avoir en échec : le code de facture commerciale 380 dans un avoir
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>EXAMPLE-CN-001</cbc:ID>
<cbc:IssueDate>2026-09-08</cbc:IssueDate>
<cbc:CreditNoteTypeCode>380</cbc:CreditNoteTypeCode>
<cbc:DocumentCurrencyCode>GBP</cbc:DocumentCurrencyCode>Fragment de l'avoir corrigé : 381, avoir
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>EXAMPLE-CN-001</cbc:ID>
<cbc:IssueDate>2026-09-08</cbc:IssueDate>
<cbc:CreditNoteTypeCode>381</cbc:CreditNoteTypeCode>
<cbc:DocumentCurrencyCode>GBP</cbc:DocumentCurrencyCode>Seul cbc:CreditNoteTypeCode diffère : 380 dans l'avoir en échec, 381 dans l'avoir corrigé. Le document en échec signale aussi BR-CL-01 depuis l'étape EN 16931, car 380 n'est pas non plus un code d'avoir dans EN 16931. Une seule valeur erronée produit un constat dans chaque étape, et 381 lève les deux.
Ce que le validateur a signalé
- L'avoir en erreur signale BR-CL-01 et PEPPOL-EN16931-P0101. Le document corrigé passe toutes les étapes de validation sans constat.Télécharger le XML en erreurTélécharger le XML corrigé
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 uniquement à UBL
CreditNote. Le code de type de facture est contrôlé parPEPPOL-EN16931-P0100par rapport à une autre liste. - Les cinq codes s'appliquent sous chaque identifiant de processus reconnu ; lors d'un essai,
261a aussi échoué sousurn:peppol:bis:billing_with_response. - Lors d'un essai, un
cbc:CreditNoteTypeCodevide a signalé cette règle avecBR-04,BR-CL-01etPEPPOL-EN16931-R008.
Règles liées
- BR-CL-01 contrôle le code de type d'avoir par rapport à la liste EN 16931 et se déclenche avec cette règle pour les codes de facture
- PEPPOL-EN16931-P0100 est la même restriction Peppol pour les codes de type de facture
- PEPPOL-EN16931-R007 contrôle l'identifiant de processus métier dont dépend cette règle
- BR-04 signale un avoir sans aucun code de type
- Parcourir toutes les règles de la référence
- Contexte (en anglais) : How Peppol invoice validation actually works
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-P0101 (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.

