Reference
Markdown exportBR-DE-14 VAT category rate must be provided
In XRechnung, every VAT breakdown group (BG-23 / VAT BREAKDOWN) must contain the VAT category rate (BT-119) expressed as a percentage. While the base European standard EN 16931 allows the percentage to be omitted in specific non-taxable or exempt scenarios (such as reverse charge AE or exempt E), the German XRechnung profile strictly enforces the presence of BT-119 (e.g. 0.00 for zero/exempt/reverse charge, or 19.00 / 7.00 for standard / reduced rates) so that automated tax calculation engines can calculate and verify tax amounts deterministically.
Problem Description
ERROR
German XRechnung rule (KoSIT, BR-DE) · XRechnung 3.0
Context and Significance
Without BT-119, validator engines cannot execute the arithmetic consistency formula TaxAmount = round(TaxableAmount * Percent / 100). The presence of BT-119 is mandatory across all VAT breakdowns in XRechnung.
Solution
In your ERP tax determination configuration, ensure the tax percentage is exported in all VAT breakdown subtotals. For reverse charge (code AE), export transactions (code G), zero-rated supplies (code Z), and tax-exempt sales (code E), explicitly output a rate of 0.00 in BT-119. In UBL 2.1 syntax, populate <cbc:Percent> inside <cac:TaxTotal><cac:TaxSubtotal><cac:TaxCategory>. In UN/CEFACT CII syntax, populate <ram:RateApplicablePercent> inside <ram:ApplicableHeaderTradeSettlement><ram:ApplicableTradeTax>.
Quick actions
Valid Examples
- Standard rate VAT breakdown with BT-118 = "S", BT-119 = 19.00, BT-116 = 100.00, BT-117 = 19.00
- Reverse charge VAT breakdown with BT-118 = "AE", BT-119 = 0.00, BT-116 = 500.00, BT-117 = 0.00
Invalid Examples
- TaxSubtotal element specifies category S and taxable amount but omits the cbc:Percent element
- Reverse charge breakdown (category AE) exported without rate percentage element under the assumption that zero rate is implicit
Code Examples
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>19.00</cbc:Percent>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal><cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>