Skip to content

BR-53: Invoice total VAT amount in accounting currency (BT-111) is missing

Official message

[BR-53] If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.

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

[BR-53] If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.

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

[BR-53] If the VAT accounting currency code (BT-6) is present, then the Invoice total VAT amount in accounting currency (BT-111) shall be provided.

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-6, BT-111

What does this mean?

If the VAT accounting currency code (BT-6) is present, the invoice total VAT amount in that currency (Invoice total VAT amount in accounting currency, BT-111) must be provided. It is missing or has a currency other than BT-6.
In CII the check also fails if the VAT accounting currency (BT-6) equals the invoice currency (BT-5).

Typical causes

The VAT accounting currency was set, but the VAT amount was only given in invoice currency.
The second tax amount carries the invoice currency instead of the VAT accounting currency in the attribute currencyID.
The same currency as the invoice currency was given as VAT accounting currency, e.g. EUR for both.

How to fix the error

Only state BT-6 if VAT has to be accounted in a currency other than the invoice currency; otherwise omit it.
If BT-6 is stated, output a second invoice total VAT amount with currencyID = BT-6, converted with the applicable rate and rounded to two decimals.
CII: ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode and ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount with @currencyID = BT-6, UBL: cbc:TaxCurrencyCode and another cac:TaxTotal/cbc:TaxAmount with @currencyID = BT-6.
Generate and validate the invoice again.

In E-Rechnungsfreund

In the invoice form ("Experte" view), section "Rechnungsdetails" (invoice details), only fill in the field "Steuerwährung (BT-6)" (VAT accounting currency) if it differs from "Währung (BT-5)" (currency); otherwise leave it empty. If it equals the currency, the application discards BT-6 and BT-111 when saving and writes neither to the XML. If a different VAT accounting currency is given, fill in the field "Steuer in Buchungswährung (BT-111)" (VAT in accounting currency) in section "Belegsummen (BG-22)" (document totals).

Example

Wrong

<ram:ApplicableHeaderTradeSettlement>
  <ram:TaxCurrencyCode>EUR</ram:TaxCurrencyCode>
  <ram:InvoiceCurrencyCode>USD</ram:InvoiceCurrencyCode>
  ...
  <ram:SpecifiedTradeSettlementHeaderMonetarySummation>
    ...
    <ram:TaxTotalAmount currencyID="USD">190.00</ram:TaxTotalAmount>
    ...
  </ram:SpecifiedTradeSettlementHeaderMonetarySummation>
</ram:ApplicableHeaderTradeSettlement>

Correct

<ram:ApplicableHeaderTradeSettlement>
  <ram:TaxCurrencyCode>EUR</ram:TaxCurrencyCode>
  <ram:InvoiceCurrencyCode>USD</ram:InvoiceCurrencyCode>
  ...
  <ram:SpecifiedTradeSettlementHeaderMonetarySummation>
    ...
    <ram:TaxTotalAmount currencyID="USD">190.00</ram:TaxTotalAmount>
    <ram:TaxTotalAmount currencyID="EUR">175.23</ram:TaxTotalAmount>
    ...
  </ram:SpecifiedTradeSettlementHeaderMonetarySummation>
</ram:ApplicableHeaderTradeSettlement>
For developers: test expression per syntax

EN 16931 (CII) (CII)

Context: //ram:SpecifiedTradeSettlementHeaderMonetarySummation

not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode) or (/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode and (ram:TaxTotalAmount/@currencyID = /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode) and not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode = /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode))

EN 16931 (UBL) (UBL)

Context: /ubl:Invoice | /cn:CreditNote

every $taxcurrency in cbc:TaxCurrencyCode satisfies exists(//cac:TaxTotal/cbc:TaxAmount[@currencyID=$taxcurrency])

Factur-X / ZUGFeRD EN 16931 (CII)

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

Context: //ram:SpecifiedTradeSettlementHeaderMonetarySummation

not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode) or (/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode and (ram:TaxTotalAmount/@currencyID = /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode) and not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode = /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:InvoiceCurrencyCode))

Related validation rules

  • BR-01: Specification identifier (BT-24) is missing
  • BR-02: Invoice number (BT-1) is missing
  • BR-03: Invoice issue date (BT-2) is missing
  • BR-04: Invoice type code (BT-3) is missing
  • BR-05: Invoice currency code (BT-5) is missing
  • BR-06: Seller name (BT-27) is missing

Frequently asked questions

Does the VAT accounting currency have to be stated if the invoice is issued in euro?

No. If the invoice currency already is the currency in which VAT has to be accounted, BT-6 stays empty and BT-111 is omitted.

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