BR-CO – Conditions and calculations
BR-CO-14: invoice total VAT (BT-110) ≠ sum of the VAT breakdown
ErrorEN 16931 business rule (CEN)
Official message
[BR-CO-14]-Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).Source: CEN EN 16931, version 1.3.16
What the message means
The total VAT amount of the invoice does not match the sum of the individual tax amounts in the VAT breakdown. The breakdown lists, per rate, the taxable amount and the tax amount; added up, these must give exactly the stated total VAT. When they differ, the recipient cannot verify the tax and rejects the invoice.
Common causes
- The tax was rounded per line and added, while the total was recalculated from the net sum.
- A VAT category is missing from the breakdown although lines with that rate exist.
- After a correction only the total was changed, not the breakdown.
How to fix it
Derive each category's tax amount from its rounded taxable amount, add these amounts and write the sum as the TaxAmount of the TaxTotal, both values with two decimals.
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">38.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
</cac:TaxSubtotal>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">50.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">3.50</cbc:TaxAmount>
</cac:TaxSubtotal>
</cac:TaxTotal><cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">22.50</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
</cac:TaxSubtotal>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">50.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">3.50</cbc:TaxAmount>
</cac:TaxSubtotal>
</cac:TaxTotal>Frequently asked
May an invoice contain several TaxTotal blocks?
One in the invoice currency, plus at most a second one in the accounting currency (BT-111). The breakdown (BG-23) lives only in the first block.
How do I avoid rounding differences under BR-CO-14?
Do not compute VAT per line; compute it per category from the rounded taxable amount. The sum of those amounts is then BT-110 by construction.
Fields concerned
- BT-110
- BT-117
Related rules
- BR-DEC-13
- BR-CO-17
- BR-O-09
Check your invoice
The EN 16931 validator reports this rule with the line number and location – right in your browser, without upload.
Technical details
- UBL · Context (XPath)
/ubl:Invoice/cac:TaxTotal | /cn:CreditNote/cac:TaxTotal- UBL · Schematron test
(xs:decimal(child::cbc:TaxAmount)= round((sum(cac:TaxSubtotal/xs:decimal(cbc:TaxAmount)) * 10 * 10)) div 100) or not(cac:TaxSubtotal)- CII · Context (XPath)
//ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode]- CII · Schematron test
. = (round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CalculatedAmount)*10*10)div 100)
Explanation written on 14 September 2026