# 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

## 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.

- [Validate XML](/en/xrechnung-validator?source=resource&rule=BR-S-8)
- [Convert invoice](/en/pdf-to-xrechnung?source=resource&rule=BR-S-8)

## 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

- [BT-116 VAT category taxable amount](/resources/xrechnung/bt-116-vat-category-taxable-amount)
- [BT-119 VAT category rate](/resources/xrechnung/bt-119-vat-category-rate)
- [BT-131 Invoice line net amount](/resources/xrechnung/bt-131-invoice-line-net-amount)
- [BT-92 Document level allowance amount](/resources/xrechnung/bt-92-document-level-allowance-amount)
- [BT-99 Document level charge amount](/resources/xrechnung/bt-99-document-level-charge-amount)

## Related Rules

- [BR-S-1](/resources/kosit-validator-errors/br-s-01-standard-rated-items-require-standard-rated-vat-breakdown)
- [BR-S-5](/resources/kosit-validator-errors/br-s-05-standard-rated-line-vat-rate-must-be-positive)
- [BR-CO-17](/resources/kosit-validator-errors/br-co-17-vat-category-tax-amount-must-match-base-times-rate)

## Validation Tools

- [Official KoSIT Validator](https://github.com/itplr-kosit/validator): Run the official KoSIT validator with the XRechnung configuration to check EN 16931 and XRechnung rules.
- [Convert PDF to XRechnung](/pdf-to-xrechnung): Find validation errors during conversion and review each correction.

## Related Resources

- [Official Specification](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Test Suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [All validation errors](/resources/kosit-validator-errors): Overview of the EN 16931, XRechnung and Peppol validation rules explained here.
