# BR-CL-08 Invoice note subject code must come from UNCL4451

When an invoice note (BT-21) carries a subject code, that code must belong to the UNCL4451 code list.

## Problem Description

When an invoice note (BT-21) carries a subject code, that code must belong to the UNCL4451 code list.

> **ERROR**: XRechnung 3.0

## Context and Significance

This EN16931 core code-list rule only constrains the subject qualifier; the free-text note itself remains unrestricted.

## Solution

In UBL, prefix the note with a UNCL4451 code between hashes, e.g. "#AAI#General information" or "#REG#..."; a free-text note without a code is also accepted.

- validate
- convert

## Valid Examples

- Note = "#AAI#General information"
- Note = "Delivery next week" — no code, allowed

## Invalid Examples

- Note = "#XYZ#..." — XYZ is not a UNCL4451 code
- Note = "#AA#..." — code is not three characters

## Code Examples

### Valid XML
```
<cbc:Note>#AAI#General information for the buyer</cbc:Note>
```

### Invalid XML
```
<cbc:Note>#XYZ#General information for the buyer</cbc:Note>
```

## Affected Fields

- [BT-21 Invoice note subject code](/resources/xrechnung/bt-21-invoice-note-subject-code)

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