HomeError code lexicon › BR-48
BR-48 Field BT-119 EN 16931 core rules (BR)

Fix BR-48: VAT breakdown without VAT rate

[BR-48] Each VAT breakdown (BG-23) shall have a VAT category rate (BT-119), except if the Invoice is not subject to VAT

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

What does BR-48 mean?

Every VAT breakdown (BG-23) must contain a VAT category rate (BT-119), unless the invoice is not subject to VAT. In the CII structure the rate sits as ram:RateApplicablePercent in each ram:ApplicableTradeTax at document level. With a zero rate or an exemption the value is 0, but it must be set. Only for the category 'not subject to VAT' (code O) may the rate be left out.

Common causes of BR-48

How to fix BR-48

  1. Find the faulty spot in the XML. Open the XML of the invoice and go to field BT-119 along this XPath://rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:RateApplicablePercent
  2. Apply the fix. Add the element ram:RateApplicablePercent with the VAT rate to every ram:ApplicableTradeTax at document level, e.g. 19.00 or 7.00; with a zero rate or an exemption 0.00. Only for category O (not subject to VAT) may the rate be omitted.
  3. Validate again. Save the file and validate it again to check that BR-48 is no longer reported.
Concrete fix

Add the element ram:RateApplicablePercent with the VAT rate to every ram:ApplicableTradeTax at document level, e.g. 19.00 or 7.00; with a zero rate or an exemption 0.00. Only for category O (not subject to VAT) may the rate be omitted.

XPath//rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:RateApplicablePercent

Before / after: the XML example

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

Wrong
<ram:ApplicableTradeTax>
  <ram:CalculatedAmount>0.00</ram:CalculatedAmount>
  <ram:TypeCode>VAT</ram:TypeCode>
  <ram:BasisAmount>100.00</ram:BasisAmount>
  <ram:CategoryCode>E</ram:CategoryCode>
</ram:ApplicableTradeTax>
Correct
<ram:ApplicableTradeTax>
  <ram:CalculatedAmount>0.00</ram:CalculatedAmount>
  <ram:TypeCode>VAT</ram:TypeCode>
  <ram:BasisAmount>100.00</ram:BasisAmount>
  <ram:CategoryCode>E</ram:CategoryCode>
  <ram:RateApplicablePercent>0.00</ram:RateApplicablePercent>
</ram:ApplicableTradeTax>

Frequent questions about BR-48

What do I set for tax-free turnover?
The rate 0.00. For zero rate (Z), exemption (E), reverse charge (AE) and similar categories a rate must be present, usually 0.
When may the rate be missing?
Only when the group is not subject to VAT, that is category O (not subject to VAT). Then BT-119 is dropped.
In which format is the rate given?
As a percentage figure without a percent sign, e.g. 19.00 or 7.00, dot as decimal separator.

Related error codes

Check BR-48 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