# BR-O-08

> In a VAT breakdown (BG-23) where the VAT category code (BT-118) is " Not subject to VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Not subject to VAT".

Checked against Peppol BIS Billing 3.0 2026.5

Canonical: https://einvoicecheck.eu/rules/br-o-08

## Official rule text

In a VAT breakdown (BG-23) where the VAT category code (BT-118) is " Not subject to VAT" the VAT category taxable amount (BT-116) shall equal the sum of Invoice line net amounts (BT-131) minus the sum of Document level allowance amounts (BT-92) plus the sum of Document level charge amounts (BT-99) where the VAT category codes (BT-151, BT-95, BT-102) are "Not subject to VAT".

## Why did my invoice fail BR-O-08?

In the 'O' (Not subject to VAT) VAT breakdown (BG-23), the VAT category taxable amount (BT-116) must equal the sum of line net amounts (BT-131) minus document-level allowances (BT-92) plus document-level charges (BT-99) that are themselves coded 'O'. This arithmetic check guarantees the out-of-scope taxable base reported in the breakdown reconciles with the underlying lines and adjustments.

## Common causes

- The 'O' TaxableAmount was hard-coded or copied rather than computed from the 'O'-coded lines/allowances/charges.
- Amounts from other VAT categories were accidentally included in the 'O' sum.
- Document-level allowances/charges coded 'O' were not subtracted/added when building the base.
- Rounding at line level differs from the aggregated breakdown value.

## How do I fix it?

```
Recompute so BT-116 = Σ line net (BT-131, cat O) − Σ allowances (BT-92, cat O) + Σ charges (BT-99, cat O); e.g. lines 100.00 − allowance 10.00 + charge 5.00 → <cbc:TaxableAmount currencyID="EUR">95.00</cbc:TaxableAmount>.
```
