BT-110Invoice total VAT amountBT-117VAT category tax amount
Texte officiel de la règle
[BR-CO-14] Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).
Le texte normatif est en anglais ; il est cité tel quel.
Pourquoi cette erreur apparaît
Le montant total de TVA de la facture (BT-110) doit être égal à la somme des montants de TVA par catégorie (BT-117) de tous les groupes de ventilation de la TVA. En UBL, la règle compare cac:TaxTotal/cbc:TaxAmount à la somme de ses cac:TaxSubtotal/cbc:TaxAmount ; en CII, elle compare ram:TaxTotalAmount dans la devise de facturation à la somme des ram:ApplicableTradeTax/ram:CalculatedAmount. La cause habituelle est un logiciel qui calcule la TVA d'en-tête en une seule fois à partir du montant net total, ce qui donne un écart d'un centime par rapport à la somme des montants par taux.
Comment corriger
Formule : BT-110 = Σ BT-117, arrondi à 2 décimales. Calculez d'abord chaque cac:TaxSubtotal/cbc:TaxAmount (ram:CalculatedAmount) par catégorie et par taux, puis additionnez ces valeurs arrondies et inscrivez le résultat dans cac:TaxTotal/cbc:TaxAmount (UBL) ou dans ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount avec currencyID (CII). Ne recalculez jamais la TVA d'en-tête à partir de la base totale. En UBL, c'est le TaxTotal exprimé dans la devise du document qui contient les sous-totaux.
Exemple (valide)
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">26.00</cbc:TaxAmount>
<cac:TaxSubtotal><cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount><cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount><cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory></cac:TaxSubtotal>
<cac:TaxSubtotal><cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount><cbc:TaxAmount currencyID="EUR">7.00</cbc:TaxAmount><cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>7</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory></cac:TaxSubtotal>
</cac:TaxTotal>
Ce que le validateur vérifie
Élément vérifié (contexte):
UBL
/ubl:Invoice/cac:TaxTotal | /cn:CreditNote/cac:TaxTotalTest (XPath):
(xs:decimal(child::cbc:TaxAmount)= round((sum(cac:TaxSubtotal/xs:decimal(cbc:TaxAmount)) * 10 * 10)) div 100) or not(cac:TaxSubtotal)CII
//ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode]Test (XPath):
. = (round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CalculatedAmount)*10*10)div 100)
Corriger automatiquement
Cette erreur peut être corrigée automatiquement : après confirmation, le vérificateur recalcule les totaux et la TVA à partir des lignes.
La même vérification par API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateRègles liées
BR-CO-15Le total TTC (BT-112) n'est pas égal au total HT plus la TVABR-CO-17La TVA par catégorie (BT-117) n'est pas égale à la base fois le tauxBR-46Chaque ventilation de TVA doit avoir un montant de TVA par catégorieBR-AE-09Le montant de TVA d'une ventilation de catégorie « Autoliquidation »…BR-AF-09Le montant de TVA d'une ventilation de catégorie « IGIC »…BR-AG-09Le montant de TVA d'une ventilation de catégorie « IPSI »…BR-DEC-13Le nombre maximal de décimales pour le montant total de TVA est 2BR-DEC-20Le nombre maximal de décimales pour le montant de TVA par catégorie est 2
Questions fréquentes
Que signifie BR-CO-14 ?
BR-CO-14 est une règle de base en 16931 : Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).
Ma facture sera-t-elle rejetée à cause de BR-CO-14 ?
Oui. BR-CO-14 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-CO-14 ?
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.