# BR-O-10

> A VAT breakdown (BG-23) with VAT Category code (BT-118) " Not subject to VAT" shall have a VAT exemption reason code (BT-121), meaning " Not subject to VAT" or a VAT exemption reason text (BT-120) " Not subject to VAT" (or the equivalent standard text in another language).

Checked against Peppol BIS Billing 3.0 2026.5

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

## Official rule text

A VAT breakdown (BG-23) with VAT Category code (BT-118) " Not subject to VAT" shall have a VAT exemption reason code (BT-121), meaning " Not subject to VAT" or a VAT exemption reason text (BT-120) " Not subject to VAT" (or the equivalent standard text in another language).

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

A VAT breakdown (BG-23) with category code 'O' (Not subject to VAT) must justify the treatment by providing either a VAT exemption reason code (BT-121) meaning 'Not subject to VAT' or a VAT exemption reason text (BT-120) stating the same. This forces the invoice to explain why no VAT applies to the out-of-scope amounts.

## Common causes

- The 'O' TaxSubtotal/TaxCategory has neither cbc:TaxExemptionReason nor cbc:TaxExemptionReasonCode.
- An exemption reason was placed on the wrong (e.g. 'E') category subtotal.
- Only a free-text reason unrelated to 'Not subject to VAT' was supplied.
- The reason code used is not a recognised code meaning 'Not subject to VAT'.

## How do I fix it?

```
Add a reason to the O category: <cac:TaxCategory><cbc:ID>O</cbc:ID><cbc:TaxExemptionReasonCode>VATEX-EU-O</cbc:TaxExemptionReasonCode><cbc:TaxExemptionReason>Not subject to VAT</cbc:TaxExemptionReason><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory>
```
