# BR-CL-08 Il codice oggetto della nota deve provenire da UNCL4451

Quando una nota di fattura (BT-22) reca un codice oggetto (BT-21), tale codice deve appartenere alla lista UNCL4451 usata dalla EN 16931.

## Descrizione del problema

> **ERRORE**: Regola sulle liste di codici EN 16931 (BR-CL)

> **Dove viene controllata BR-CL-08**
>
> Un validatore controlla una fattura elettronica per fasi. Prima il file deve essere XML ben formato e conforme allo schema UBL o CII (XSD). Poi si applicano le regole di business della EN 16931: regole di base BR, calcoli BR-CO, liste di codici BR-CL, decimali BR-DEC e regole per categoria IVA come BR-S. Seguono le regole nazionali o di rete selezionate da BT-24: BR-DE per XRechnung, PEPPOL-EN16931 per Peppol BIS Billing. Il report elenca ogni regola violata: un errore significa rifiuto, i soli avvisi significano comunque accettazione. BR-CL-08: regola di lista codici EN 16931, fase «Regole EN 16931».

## Contesto e significato

In UBL il validatore legge come codice oggetto il testo tra i primi due cancelletti di una nota, ma solo se è lungo esattamente tre caratteri. Un codice in minuscolo ("#aai#") o un codice di tre caratteri fuori lista ("#XYZ#") quindi fallisce, mentre un singolo cancelletto nel testo libero, come "DDT #4711", no. In CII viene controllato ogni ram:SubjectCode. Esempio: "#AAI#Indicare il numero d’ordine" è valido.

## Soluzione

In UBL inserisci il codice in maiuscolo tra due cancelletti all’inizio di cbc:Note, ad es. "#AAI#Informazione generale" o "#REG#...". In CII inserisci il codice in ram:IncludedNote/ram:SubjectCode. È valida anche una nota senza codice oggetto.

- [Valida XML](/it/xrechnung-validator?source=resource&rule=BR-CL-08)
- [Converti fattura](/it/pdf-to-xrechnung?source=resource&rule=BR-CL-08)

## Esempi validi

- Nota = "#AAI#Informazione generale"
- Nota = "DDT #4711" — un singolo cancelletto non è letto come codice

## Esempi non validi

- Nota = "#XYZ#..." — XYZ non è un codice UNCL4451
- Nota = "#aai#..." — minuscolo; i codici distinguono maiuscole e minuscole

## Esempi di codice

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

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

## Campi interessati

- [BT-21 Codice oggetto nota di fattura](/resources/xrechnung/bt-21-invoice-note-subject-code)

## Strumenti di validazione

- [Validatore KoSIT ufficiale](https://github.com/itplr-kosit/validator): Esegui il validatore ufficiale KoSIT con la configurazione XRechnung per controllare le regole EN 16931 e XRechnung.
- [Converti PDF in XRechnung](/pdf-to-xrechnung): Individua gli errori di validazione durante la conversione e verifica ogni correzione.

## Risorse correlate

- [Specifiche ufficiali](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Test suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Tutti gli errori di validazione](/resources/kosit-validator-errors): Panoramica delle regole di validazione EN 16931, XRechnung e Peppol spiegate qui.
