# PEPPOL-EN16931-R008 Il documento non deve contenere elementi vuoti

PEPPOL-EN16931-R008 segnala ogni elemento XML privo sia di testo sia di elementi figli, per esempio <cbc:Note/> o <cbc:Telephone> </cbc:Telephone>. Gli attributi non contano come contenuto, quindi anche <cbc:EndpointID schemeID="EM"/> è vuoto. La configurazione KoSIT per XRechnung 3.0.2 applica la regola come errore fatale sia in UBL sia in CII. Sono esclusi solo un cbc:ID vuoto in cac:OrderReference (UBL) e ram:ApplicableHeaderTradeDelivery, richiesto dallo schema CII.

## Descrizione del problema

> **ERRORE**: Regola Peppol BIS Billing 3.0 (OpenPeppol)

> **Dove viene controllata PEPPOL-EN16931-R008**
>
> 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. PEPPOL-EN16931-R008: regola Peppol BIS Billing, fase «Regole nazionali (CIUS)».

## Contesto e significato

Gli elementi vuoti derivano di solito da modelli di esportazione che scrivono ogni campo anche quando l’origine non ha un valore: una nota vuota, un campo di contatto, una riga di indirizzo o un blocco di una parte. Un segnaposto nasconde l’errore strutturale, ma inserisce un dato errato nella fattura.

## Soluzione

Rimuovi l’elemento vuoto. Se il gruppo padre non contiene più dati, rimuovi anche il gruppo. Se il campo è obbligatorio, inserisci il valore reale del documento di origine. Non riempire l’elemento con segnaposto come "-" o "n/a". La posizione indicata nel report del validatore (un XPath) identifica l’elemento.

- [Valida XML](/it/xrechnung-validator?source=resource&rule=PEPPOL-EN16931-R008)
- [Converti fattura](/it/pdf-to-xrechnung?source=resource&rule=PEPPOL-EN16931-R008)

## Esempi validi

- <cbc:Telephone>+49 30 1234567</cbc:Telephone>
- Nessun elemento cbc:Note se la fattura non ha note

## Esempi non validi

- <cbc:Note/>
- <cbc:Telephone></cbc:Telephone>
- <cbc:EndpointID schemeID="EM"/>

## Esempi di codice

### XML valido
```
<cac:Contact>
  <cbc:Name>Accounts receivable</cbc:Name>
  <cbc:Telephone>+49 30 1234567</cbc:Telephone>
  <cbc:ElectronicMail>billing@example.com</cbc:ElectronicMail>
</cac:Contact>
```

### XML non valido
```
<cac:Contact>
  <cbc:Name>Accounts receivable</cbc:Name>
  <cbc:Telephone/>
  <cbc:ElectronicMail>billing@example.com</cbc:ElectronicMail>
</cac:Contact>
```

## Campi interessati

- [BT-22 Nota della fattura](/resources/xrechnung/bt-22-invoice-note)
- [BT-34 Indirizzo elettronico del venditore](/resources/xrechnung/bt-34-seller-electronic-address)
- [BT-42 Numero di telefono del contatto venditore](/resources/xrechnung/bt-42-seller-contact-telephone-number)

## 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-peppol/)
- [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.
