# BR-47 Each VAT breakdown must have a VAT category code

Each VAT breakdown (BG-23) must be defined through a VAT category code (BT-118).

## Problem Description

Each VAT breakdown (BG-23) must be defined through a VAT category code (BT-118).

> **ERROR**: XRechnung 3.0

## Context and Significance

BT-118 controls which VAT rule family applies. Leaving it unresolved can create wrong XML, so the backend blocks this instead of guessing.

## Solution

Set BT-118 on every tax subtotal, for example S, Z, E, AE, or O, and keep it aligned with line VAT categories.

- validate
- convert

## Valid Examples

- BT-118 = S with BT-119 = 19

## Invalid Examples

- VAT breakdown exists without BT-118
- Tax category left blank after OCR extraction

## Technical Details

### Affected Fields
BT-118 VAT category code

## Related Rules

- [BR-DE-14](/resources/kosit-validator-errors/br-de-14-seller-tax-representative-party-must-be-provided)
- [BR-S-1](/resources/kosit-validator-errors/br-s-1-standard-rated-line-requires-standard-rated-vat-breakdown)
- [BR-S-8](/resources/kosit-validator-errors/br-s-8-standard-rated-taxable-amount-must-match-line-and-allowance-sum)

## Validation Tools

- [Official KoSIT Validator](https://erechnungsvalidator.service-bw.de/): Validate your XRechnung files against all BR-DE rules.
- [Convert PDF to XRechnung](/pdf-to-xrechnung): Automatic validation error fixes when converting.

## Related Resources

- [Official Specification](https://xeinkauf.de/xrechnung/)
- [Test Suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Complete Error List](/resources/kosit-validator-errors): Overview of all German XRechnung validation rules.
