BG-23VAT breakdownBT-118VAT category codeBT-120VAT exemption reason textBT-121VAT exemption reason code
Texte officiel de la règle
[BR-Z-10] A VAT breakdown (BG-23) with VAT Category code (BT-118) "Zero rated" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
Le texte normatif est en anglais ; il est cité tel quel.
Pourquoi cette erreur apparaît
Une ventilation de la TVA de catégorie Z (taux zéro) est taxable à 0 % : il n'y a donc aucune exonération à justifier. La règle interdit cbc:TaxExemptionReason et cbc:TaxExemptionReasonCode dans le cac:TaxCategory d'ID Z (UBL) ainsi que ram:ExemptionReason / ram:ExemptionReasonCode dans le ram:ApplicableTradeTax de CategoryCode Z (CII). L'erreur provient typiquement d'un logiciel qui écrit un texte de motif pour toute catégorie à 0 %, ou d'une confusion entre taux zéro et exonération.
Comment corriger
Supprimez les éléments de motif d'exonération de la ventilation Z. Si l'opération est réellement exonérée par la loi (par exemple soins médicaux, livraison intracommunautaire, exportation), la bonne catégorie est respectivement E, K ou G, qui exigent un motif ; Z est réservée aux biens et services légalement taxés à un taux zéro. Conservez cbc:Percent à 0 et cbc:TaxAmount à 0.00.
Exemple (valide)
<cac:TaxCategory>
<cbc:ID>Z</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:TaxCategory>
Ce que le validateur vérifie
Élément vérifié (contexte):
UBL
/*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'Z'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']Test (XPath):
not((cbc:TaxExemptionReason) or (cbc:TaxExemptionReasonCode))CII
//ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode[. = 'Z']Test (XPath):
not(../ram:ExemptionReason) and not (../ram:ExemptionReasonCode)
Vérifier votre facture
Déposez votre XML ou PDF dans le validateur : chaque règle en échec renvoie vers sa page ici. Gratuit, sans compte, le fichier n'est pas conservé.
La même vérification par API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateRègles liées
BR-AE-10Ventilation en autoliquidation sans motif d'exonérationBR-AF-10Une ventilation de TVA de catégorie « IGIC » ne doit pas avoir de motif d'exonération…BR-AG-10Une ventilation de TVA de catégorie « IPSI » ne doit pas avoir de motif d'exonération…BR-E-10Ventilation exonérée de TVA sans motif d'exonérationBR-G-10Une ventilation de TVA « Export hors UE » doit avoir un motif d'exonération…BR-IC-10Une ventilation de TVA « Livraison intracommunautaire » doit avoir un motif d'exonération…BR-O-10Une ventilation de TVA « Non soumis à la TVA » doit avoir un motif d'exonération…BR-S-10Une ventilation TVA de code "Taux normal" ne doit pas avoir d'exonération TVA…
Questions fréquentes
Que signifie BR-Z-10 ?
BR-Z-10 est une règle de base en 16931 : A VAT breakdown (BG-23) with VAT Category code (BT-118) "Zero rated" shall not have a VAT exemption reason code (BT-121) or VAT exemption reason text (BT-120).
Ma facture sera-t-elle rejetée à cause de BR-Z-10 ?
Oui. BR-Z-10 est classée « bloquante » ; les validateurs (plateformes agréées, points d'accès Peppol, KoSIT, KSeF) rejettent la facture tant qu'elle n'est pas corrigée.
À quels formats s'applique BR-Z-10 ?
Toute facture EN 16931 : Factur-X / ZUGFeRD 2.x (profils EN 16931, EXTENDED, XRECHNUNG), XRechnung, Peppol BIS Billing 3.0 et les CIUS nationales. Syntaxe : UBL et CII.
Source: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.