Skip to main content

BR-S-8 Standard-rated taxable amount must equal line nets plus charges minus allowances at the same rate

For each different VAT category rate (BT-119) where the VAT category code (BT-118) is "S", the VAT category taxable amount (BT-116) in the VAT breakdown must equal the sum of invoice line net amounts (BT-131) plus document-level charges (BT-99) minus document-level allowances (BT-92) whose VAT category code (BT-151, BT-102, BT-95) is "S" and whose rate (BT-152, BT-103, BT-96) equals BT-119.

Problem Description

ERROR

EN 16931 VAT category rule

Interactive pipeline

Click a stage to see what it checks, or type a rule ID to light up the stage that reports it.

Try:

BR-S-08 EN 16931 VAT category rule

Reported in stage 2: EN 16931 rules.

Level error: the report recommends rejecting the invoice.

Stage 2 · What it checks

  • The core business terms are present (BR-01 to BR-65).
  • Totals add up and related fields agree (BR-CO); codes and decimals are valid (BR-CL, BR-DEC).
  • Each VAT category is consistent: S, Z, E, AE, K, G, O, L, M (BR-S, BR-Z, BR-AE, BR-IC …).

Example codes

Typical fix

Recalculate totals and VAT from the line data, and correct the VAT category in the source data.

A validator checks an e-invoice in stages. First the file must be well-formed XML that matches the UBL or CII schema (XSD). Then the EN 16931 business rules run: BR core rules, BR-CO calculations, BR-CL code lists, BR-DEC decimals and VAT-category rules such as BR-S. Next come the national or network rules that BT-24 selects: BR-DE for XRechnung, PEPPOL-EN16931 for Peppol BIS Billing. The report lists every failed rule: one error means reject, warnings alone still mean accept. BR-S-08: EN 16931 VAT category rule, reported in the stage “EN 16931 rules”. Rule sets: KoSIT validator 1.6.3 with the XRechnung configuration of 31 Aug 2026 (EN 16931 artefacts 1.3.16), Peppol BIS Billing 3.0.21.

Context and Significance

When sellers issue mixed-rate invoices (for example 7 % and 19 % in Germany), the taxable amount per rate must match the lines, allowances and charges behind it. It is the basis of the VAT amount check in BR-CO-17. In practice the difference usually comes from a document level allowance or charge assigned to the wrong rate, from a global discount that is split across rates in the totals but exported with one rate only, or from lines whose rate matches no breakdown row.

Solution

Group all "S"-rated lines, allowances, and charges by rate, and recompute BT-116 per group as Σ BT-131 + Σ BT-99 − Σ BT-92.

Quick actions

Valid Examples

  • Two lines at 19% (60.00 + 40.00) and one allowance at 19% (10.00) yield BT-116 = 90.00 for the 19% breakdown row
  • Single line at 7% net 50.00 yields BT-116 = 50.00 for the 7% breakdown row

Invalid Examples

  • BT-116 for the 19% row reports 100.00 but the lines sum to 90.00 after allowances
  • BT-116 for the 7% row missing while a 7% line exists

Affected Fields

Validation Tools