Skip to content

BR-CO-14: Invoice total VAT amount (BT-110) does not match the VAT breakdown

Official message

[BR-CO-14] Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).

EN 16931 (CII) · Error · Message language: English · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-CO-14] Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).

EN 16931 (UBL) · Error · Message language: English · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-CO-14] Invoice total VAT amount (BT-110) = Σ VAT category tax amount (BT-117).

Factur-X / ZUGFeRD EN 16931 · Error · Message language: English · Version: Factur-X 1.08 / ZUGFeRD 2.4
Severity
Error The invoice is invalid and may be rejected by the recipient.
Applies to
EN 16931 (CII), EN 16931 (UBL), Factur-X / ZUGFeRD EN 16931
Affected fields
BT-110, BT-117

What does this mean?

The invoice total VAT amount (BT-110) shall equal the sum of the tax amounts of all VAT categories in the VAT breakdown (BT-117). The value in BT-110 deviates from it.
Checked: BT-110 = Σ BT-117, the sum rounded to two decimals. Example: 57.00 (19%) + 7.00 (7%) = 64.00. In CII only the amount in invoice currency (BT-5) is considered, not the one in accounting currency (BT-111).

Typical causes

VAT was calculated and summed per line, but the VAT breakdown per category; rounding causes differences.
BT-110 was calculated directly as BT-109 × rate although there are several rates.
A category of the VAT breakdown was changed, added or removed without adjusting BT-110.

How to fix the error

Calculate BT-110 as the sum of the tax amounts of all entries of the VAT breakdown (BG-23) and round it to two decimals.
First check that the tax amounts per category are correct themselves (BR-CO-17).
Recalculate the invoice total amount with VAT (BT-112) and the amount due for payment (BT-115).
CII: ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount (invoice currency) and ram:ApplicableTradeTax/ram:CalculatedAmount, UBL: cac:TaxTotal/cbc:TaxAmount and cac:TaxSubtotal/cbc:TaxAmount.

In E-Rechnungsfreund

In the invoice form, the VAT breakdown (BG-23) and BT-110 are calculated from the lines and the allowances and charges when the XML is generated, and rounded to two decimals; the values in sections "Steueraufstellung (BG-23)" (VAT breakdown) and "Belegsummen (BG-22)" (document totals, field "Steuer gesamt (BT-110)") are not used for this. Check VAT category and rate of the lines and validate the invoice again.

Example

Wrong

<!-- VAT breakdown: BT-117 = 57.00 and 7.00 -->
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
  ...
  <ram:TaxTotalAmount currencyID="EUR">57.00</ram:TaxTotalAmount>
  ...
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>

Correct

<!-- VAT breakdown: BT-117 = 57.00 and 7.00 -->
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
  ...
  <ram:TaxTotalAmount currencyID="EUR">64.00</ram:TaxTotalAmount>
  ...
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
For developers: test expression per syntax

EN 16931 (CII) (CII)

Context: //ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode]

. = (round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CalculatedAmount)*10*10)div 100)

EN 16931 (UBL) (UBL)

Context: /ubl:Invoice/cac:TaxTotal | /cn:CreditNote/cac:TaxTotal

(xs:decimal(child::cbc:TaxAmount)= round((sum(cac:TaxSubtotal/xs:decimal(cbc:TaxAmount)) * 10 * 10)) div 100) or not(cac:TaxSubtotal)

Factur-X / ZUGFeRD EN 16931 (CII)

Technical ID in the source: FX-SCH-A-000130

Context: //ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID=/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode]

. = (round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CalculatedAmount)*10*10)div 100)

Related validation rules

  • BR-CO-03: Value added tax point date (BT-7) and tax point date code (BT-8) are mutually exclusive
  • BR-CO-04: Invoiced item VAT category code (BT-151) is missing
  • BR-CO-05: Document level allowance reason code (BT-98) and allowance reason (BT-97) must indicate the same type
  • BR-CO-06: Document level charge reason code (BT-105) and charge reason (BT-104) must indicate the same type
  • BR-CO-07: Invoice line allowance reason code (BT-140) and allowance reason (BT-139) must indicate the same type
  • BR-CO-08: Invoice line charge reason code (BT-145) and charge reason (BT-144) must indicate the same type

Last updated:
Explanation of the validation rule, not legal or tax advice.