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
- ram:TaxCurrencyCode is set, but there is only one ram:TaxTotalAmount, in invoice currency.
- The second ram:TaxTotalAmount is missing or carries the wrong currencyID.
- The VAT amount was never converted into the accounting currency.
How to fix BR-53
- 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'] - 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.
- Validate again. Save the file and validate it again to check that BR-53 is no longer reported.
Add a second ram:TaxTotalAmount in ram:SpecifiedTradeSettlementHeaderMonetarySummation with currencyID equal to the ram:TaxCurrencyCode, for example currencyID="USD" with the converted VAT amount.
/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).
<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>
<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?
How do I tell the two TaxTotalAmount apart?
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.