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
Interactive pipeline
Where BR-DE-14 is checked
Click a stage to see what it checks, or type a rule ID to light up the stage that reports it.
BR-DE-14 XRechnung rule (Germany)
Reported in stage 3: National rules (CIUS).
Level error: the report recommends rejecting the invoice.
Stage 3 · What it checks
National rules (CIUS)
- The specification identifier in BT-24 selects the rule set, for example XRechnung 3.0 or Peppol BIS Billing 3.0.
- XRechnung adds the German BR-DE rules: buyer reference (BT-10), seller contact, payment instructions.
- Peppol adds PEPPOL-EN16931 and country rules. XRechnung applies some PEPPOL-EN16931 rules too.
Example codes
Typical fix
Fill the fields the rule set requires in your master data, such as the Leitweg-ID in BT-10 or the seller contact.
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>