HomeError code lexicon › BR-53
BR-53 Field BT-111 EN 16931 core rules (BR)

Fix BR-53: VAT amount in accounting currency missing

[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

BR-53 in your own invoice? Upload the file and find every error in seconds.

What does BR-53 mean?

If the VAT accounting currency code (BT-6) is present, the invoice total VAT amount in that currency (BT-111) must be there too. BT-6 says in which currency the VAT is settled with the tax office when it differs from the invoice currency. The amount goes in as a second ram:TaxTotalAmount with the currencyID of the tax currency. The rule applies only when BT-6 is set.

Common causes of BR-53

How to fix BR-53

  1. Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-111 along this XPath:/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID='USD']
  2. Apply the fix. Add a second ram:TaxTotalAmount in ram:SpecifiedTradeSettlementHeaderMonetarySummation with currencyID equal to the ram:TaxCurrencyCode, for example currencyID="USD" with the converted VAT amount.
  3. Validate again. Save the file and validate it again to check that BR-53 is no longer reported.
Concrete fix

Add a second ram:TaxTotalAmount in ram:SpecifiedTradeSettlementHeaderMonetarySummation with currencyID equal to the ram:TaxCurrencyCode, for example currencyID="USD" with the converted VAT amount.

XPath/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID='USD']

Before / after: the XML example

This is the spot in question before and after the fix (Cross Industry Invoice, ZUGFeRD/Factur-X).

Wrong
<ram:ApplicableHeaderTradeSettlement>
  <ram:TaxCurrencyCode>USD</ram:TaxCurrencyCode>
  <ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>
  <ram:SpecifiedTradeSettlementHeaderMonetarySummation>
    <ram:TaxBasisTotalAmount>1000.00</ram:TaxBasisTotalAmount>
    <ram:TaxTotalAmount currencyID="EUR">190.00</ram:TaxTotalAmount>
    <ram:GrandTotalAmount>1190.00</ram:GrandTotalAmount>
    <ram:DuePayableAmount>1190.00</ram:DuePayableAmount>
  </ram:SpecifiedTradeSettlementHeaderMonetarySummation>
</ram:ApplicableHeaderTradeSettlement>
Correct
<ram:ApplicableHeaderTradeSettlement>
  <ram:TaxCurrencyCode>USD</ram:TaxCurrencyCode>
  <ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>
  <ram:SpecifiedTradeSettlementHeaderMonetarySummation>
    <ram:TaxBasisTotalAmount>1000.00</ram:TaxBasisTotalAmount>
    <ram:TaxTotalAmount currencyID="EUR">190.00</ram:TaxTotalAmount>
    <ram:TaxTotalAmount currencyID="USD">205.20</ram:TaxTotalAmount>
    <ram:GrandTotalAmount>1190.00</ram:GrandTotalAmount>
    <ram:DuePayableAmount>1190.00</ram:DuePayableAmount>
  </ram:SpecifiedTradeSettlementHeaderMonetarySummation>
</ram:ApplicableHeaderTradeSettlement>

Frequent questions about BR-53

When do I need BT-111 at all?
Only when the VAT is settled in a currency other than the invoice currency and you therefore set ram:TaxCurrencyCode (BT-6).
How do I tell the two TaxTotalAmount apart?
By the currencyID attribute. The first carries the invoice currency (BT-110), the second the tax currency from BT-6 (BT-111).

Related error codes

Check BR-53 automatically

Instead of digging through the XML by hand you can validate your ZUGFeRD or XRechnung file online – upload the PDF or the XML and you get every error with rule ID, affected field, fix and XPath, as a readable report or as JSON through the API.

Find every error automatically instead of searching by hand

Upload your ZUGFeRD, Factur-X or XRechnung file – you get every violation back with rule ID, field, fix and XPath.

Validate online for free
Check invoice