Sur cette page
La réponse courte
PEPPOL-EN16931-P0107 échoue pour chaque cac:TaxCategory portant VATEX-EU-AE dont le cbc:ID n'est pas AE. Le code indique que le client acquitte la TVA par autoliquidation, et AE est la seule catégorie qui a ce sens.
L'exemple enregistré vend à un acheteur en Allemagne, avec les deux identifiants TVA, une date de livraison et un pays de livraison, en catégorie K : une livraison intracommunautaire. Une telle vente est souvent appelée autoliquidation, mais elle a un code propre, VATEX-EU-IC, et rétablir ce code constitue la correction.
Ce que la règle vérifie
Chaque cac:TaxCategory dont le code d'exonération, mis en majuscules, donne VATEX-EU-AE est contrôlée, et elle ne réussit qu'avec la catégorie AE. La catégorie est débarrassée de ses espaces de bord, le code non : lors d'un essai, une espace après VATEX-EU-AE l'a caché à cette règle, tandis que BR-CL-22 l'acceptait toujours.
Une autoliquidation intérieure laissée au taux normal est repérée deux fois. Lors d'un essai, VATEX-EU-AE dans une ventilation au taux normal de 20 pour cent a été signalé par cette règle et par BR-S-10.
Le reste de la facture n'est pas examiné. Lors d'un essai, l'exemple enregistré, avec sa ventilation et sa ligne passées en AE et portant toujours VATEX-EU-AE, a réussi toutes les étapes, car il avait déjà les identifiants TVA du vendeur et de l'acheteur qu'exige BR-AE-02. Savoir si AE ou K est juste relève de la TVA, et le validateur ne peut pas y répondre.
| Terme | Signification | Élément UBL |
|---|---|---|
| BT-121 | Code du motif d'exonération de TVA | cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:TaxExemptionReasonCode |
| BT-118 | Code de catégorie de TVA | cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID |
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 :
- Toute vente sans TVA à une entreprise assujettie d'un autre État membre est qualifiée d'autoliquidation, qu'il s'agisse de biens ou de services.
- Le code d'exonération vient d'un indicateur d'autoliquidation sur le client, tandis que la catégorie vient de la nature de la livraison.
- Une autoliquidation intérieure pour certains biens ou services n'est signalée que par le code, et la catégorie reste
S.
Comment corriger le document
- Distinguez les deux traitements. Des biens expédiés à un acheteur assujetti d'un autre État membre forment une livraison intracommunautaire,
KavecVATEX-EU-IC; une livraison pour laquelle l'acheteur acquitte la TVA d'une autre manière, comme de nombreux services transfrontaliers, relève deAEavecVATEX-EU-AE. - Pour une livraison intracommunautaire, comme dans l'exemple, gardez
Ket écrivezVATEX-EU-IC.BR-IC-10exige un motif sur cette ventilation, et le texte suffirait à lui seul. - Pour une autoliquidation, passez la ventilation et ses lignes en
AE, avec le taux0et sans montant de TVA, et vérifiez que les identifiants TVA sont présents. - Pour une autoliquidation intérieure codée
Spar erreur, la catégorie doit changer elle aussi : une ventilation au taux normal ne peut porter aucun motif d'exonération.
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 : une ventilation intracommunautaire portant le code d'autoliquidation
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">25.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>K</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cbc:TaxExemptionReasonCode>VATEX-EU-AE</cbc:TaxExemptionReasonCode>
<cbc:TaxExemptionReason>Intra-community supply</cbc:TaxExemptionReason>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>Fragment de la facture corrigée : la ventilation intracommunautaire porte VATEX-EU-IC
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">25.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>K</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cbc:TaxExemptionReasonCode>VATEX-EU-IC</cbc:TaxExemptionReasonCode>
<cbc:TaxExemptionReason>Intra-community supply</cbc:TaxExemptionReason>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>Seul le code d'exonération diffère : VATEX-EU-AE dans la facture en échec, VATEX-EU-IC dans la facture corrigée ; la catégorie K, le texte de motif et les montants sont inchangés. Le document en échec ne signale que cette règle, car le texte satisfait BR-IC-10 et aucune règle EN 16931 ne compare un code à sa catégorie.
Ce que le validateur a signalé
- La facture en erreur signale PEPPOL-EN16931-P0107. 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 à UBL
InvoiceetCreditNote. Lors d'un essai,VATEX-EU-AEdans la ventilation d'un avoir exonéré a signalé cette règle. - Une règle de l'étape Peppol. Dans l'étape EN 16931,
BR-CL-22accepteVATEX-EU-AEcomme code de la liste dans n'importe quelle catégorie. - La catégorie
AEapporte ses propres exigences, dont les identifiants TVA deBR-AE-02et un motif selonBR-AE-10.
Règles liées
- BR-AE-10 exige un motif sur une ventilation en autoliquidation, là où VATEX-EU-AE a sa place
- BR-IC-10 exige le motif sur une ventilation de livraison intracommunautaire, rétabli ici sous la forme VATEX-EU-IC
- PEPPOL-EN16931-P0105 rejette le code de non-soumission à la TVA lorsqu'il apparaît dans une ventilation en autoliquidation
- PEPPOL-EN16931-P0108 rejette le code des moyens de transport d'occasion dans une ventilation intracommunautaire
- 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-28.1 : source vérifiée le 2026-09-28, explication mise à jour le 2026-09-28.
La définition officielle de PEPPOL-EN16931-P0107 (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.

