Sur cette page
La réponse courte
BR-AE-01 échoue lorsque la catégorie AE est utilisée sur une ligne, une remise au niveau du document ou des frais au niveau du document et que le cac:TaxTotal racine ne contient pas exactement un cac:TaxSubtotal de catégorie AE. La facture enregistrée a une ligne au taux normal et une ligne en autoliquidation de 40.00, mais seulement une ventilation au taux normal ; ajoutez la ventilation AE avec une base imposable de 40.00, une taxe de 0.00, un taux de 0 et le motif d'autoliquidation.
Une ventilation qui n'ajoute rien au total de la TVA reste obligatoire. L'omettre retire aussi à l'acheteur le montant sur lequel il déclare lui-même la TVA.
Ce que la règle vérifie
La règle cherche AE sous le schéma VAT dans tout cac:ClassifiedTaxCategory ou cac:TaxCategory du document, puis compte les ventilations AE directement sous le cac:TaxTotal racine. Lors d'un essai, une facture au taux normal dont le seul élément en autoliquidation était des frais de transport de 4.00 a signalé cette règle seule tant qu'elle n'avait pas de ventilation AE.
Deux ventilations AE échouent aussi. Lors d'un essai, les 40.00 scindés en ventilations de 25.00 et 15.00 ont signalé cette règle et BR-AE-08 pour chaque moitié, et donner à la seconde moitié le code VATEX-EU-AE au lieu du texte n'a rien changé.
Le montant en autoliquidation doit figurer dans une ventilation de sa propre catégorie. Lors d'un essai, transformer la ventilation AE en une seconde ventilation S à 0 a signalé cette règle et BR-S-08.
Une ventilation AE superflue passe inaperçue, car sa propre catégorie compte comme contenu en autoliquidation. Lors d'un essai, une ventilation AE de 0.00 ajoutée à une facture ne comportant qu'une ligne au taux normal a passé toutes les étapes.
| Terme | Signification | Élément UBL |
|---|---|---|
| BG-23 | Ventilation de la TVA | cac:TaxTotal/cac:TaxSubtotal |
| BT-118 | Code de catégorie de TVA | cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory/cbc:ID |
| BT-151 | Code de catégorie de TVA de l'article facturé | cac:InvoiceLine/cac:Item/cac:ClassifiedTaxCategory/cbc:ID (cac:CreditNoteLine/cac:Item/cac:ClassifiedTaxCategory/cbc:ID in a credit note) |
| BT-95 | Code de catégorie de TVA de la remise au niveau du document | cac:AllowanceCharge[cbc:ChargeIndicator = false]/cac:TaxCategory/cbc:ID |
| BT-102 | Code de catégorie de TVA des charges ou frais au niveau du document | cac:AllowanceCharge[cbc:ChargeIndicator = true]/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 :
- La ventilation n'est construite que pour les catégories qui portent une taxe, si bien que le montant en autoliquidation, sans taxe, est ignoré.
- Des lignes en autoliquidation sont mêlées à des lignes au taux normal sur une même facture, et l'export a été écrit pour une seule catégorie par document.
- La ventilation est regroupée par taux uniquement, si bien que le montant en autoliquidation à 0 est fusionné avec d'autres montants à 0 ou perdu.
- Une ventilation
AEdistincte est produite pour chaque ligne ou chaque motif d'autoliquidation.
Comment corriger le document
- Additionnez le contenu en autoliquidation : le
cbc:LineExtensionAmountdes lignes enAE, plus les frais au niveau du document enAE, moins les remises au niveau du document enAE. Dans l'exemple enregistré, ce sont les 40.00 de la ligne 2. - Émettez un seul
cac:TaxSubtotalavec ce montant commecbc:TaxableAmount, uncbc:TaxAmountde0.00, et uncac:TaxCategoryaveccbc:IDàAE,cbc:Percentà0et le texte de motifReverse chargeou le codeVATEX-EU-AE. - Placez-le dans le même
cac:TaxTotalque les autres ventilations. Le total de la TVA ne change pas, 5.00 dans l'exemple enregistré, car la nouvelle ventilation ne porte aucune taxe. - Si des ventilations
AEont été scindées, fusionnez-les en une seule dont la base imposable est leur somme.
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 ligne en autoliquidation de 40.00, et une ventilation de la TVA avec la seule entrée au taux normal
<cac:TaxTotal>
<cbc:TaxAmount currencyID="GBP">5.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">25.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">5.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>20</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<!-- line 1 omitted from this fragment: Standard rated, 25.00 at 20 -->
<cac:InvoiceLine>
<cbc:ID>2</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">1</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="GBP">40.00</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>Example installation work</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<!-- tax scheme omitted from this fragment -->
</cac:ClassifiedTaxCategory>
</cac:Item>
<!-- price omitted from this fragment -->
</cac:InvoiceLine>Fragment de la facture corrigée : une ventilation en autoliquidation de 40.00 à côté de celle au taux normal
<cac:TaxTotal>
<cbc:TaxAmount currencyID="GBP">5.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">25.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">5.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>20</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="GBP">40.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="GBP">0.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>AE</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cbc:TaxExemptionReason>Reverse charge</cbc:TaxExemptionReason>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>La facture corrigée a un second cac:TaxSubtotal, avec une base imposable de 40.00 et une taxe de 0.00 en catégorie AE et le motif Reverse charge ; la facture en échec n'a que la ventilation au taux normal de 25.00. Le document en échec ne signale que BR-AE-01. La ventilation manquante ne portait aucune taxe, si bien que le total de la TVA de 5.00 correspond toujours aux ventilations, et les totaux de 65.00 hors TVA et de 70.00 TVA comprise sont identiques dans les deux documents.
Ce que le validateur a signalé
- La facture en erreur signale BR-AE-01. 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, l'avoir mixte sans sa ventilationAEa signalé la même règle. - Signalé par l'étape EN 16931 comme un seul constat fatal à la racine du document.
- Le contenu exonéré et le contenu au taux zéro ont la même règle d'exactement une ventilation,
BR-E-01etBR-Z-01, tandis queBR-S-01permet au contenu au taux normal une ventilation par taux. - Une fois la ventilation présente,
BR-AE-08contrôle sa base imposable,BR-AE-09sa taxe nulle etBR-AE-10son motif.
Règles liées
- BR-AE-08 contrôle la base imposable de l'unique ventilation en autoliquidation
- BR-E-01 est la même règle d'exactement une ventilation pour la ventilation exonérée
- BR-AE-10 exige le motif d'autoliquidation dans la ventilation que cette règle demande
- BR-S-01 est la règle de la ventilation au taux normal, qui permet une ventilation par taux
- Parcourir toutes les règles de la référence
- Contexte (en anglais) : Understanding EN 16931 validation errors
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 BR-AE-01 (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.

