Fattura elettronica: le notifiche dello SdI che decidono se la fattura esiste
Il momento in cui premi "invia" non è il momento in cui la fattura esiste. Esiste quando il Sistema di Interscambio risponde — e risponde in cinque modi diversi, quattro dei quali richiedono che tu faccia qualcosa.
Il ciclo di vita non finisce con l'invio
Chi integra la fattura elettronica per la prima volta modella due stati: da inviare e inviata. È il modello sbagliato, perché il Sistema di Interscambio risponde a ogni trasmissione con una notifica, e quelle notifiche sono il vero stato della fattura.
Sono cinque e conviene conoscerle per sigla, perché è così che le chiamano i file XML che arrivano:
- RC — RicevutaConsegna. Consegnata al destinatario. È l'esito che cercavi.
- NS — NotificaScarto. Scartata. Per il fisco quella fattura non è mai esistita.
- MC — MancataConsegna. Valida ma non recapitata: lo SdI la mette a disposizione nell'area riservata del destinatario.
- NE — NotificaEsito. Solo verso la PA: il committente ha accettato (EC01) o rifiutato (EC02).
- DT — DecorrenzaTermini. Il committente non si è espresso nei termini: la fattura è a buon fine.
Un dettaglio implementativo che fa perdere giornate: l'esito di una NE non sta nel nome del file né nell'elemento radice, sta dentro il corpo della notifica. Chi legge solo la radice vede "NotificaEsito" e non sa se la fattura è stata accettata o rifiutata. Sono due righe di codice e due significati opposti.

Scarto e mancata consegna si somigliano e vanno trattati all'opposto
Entrambe arrivano come "la fattura non è dal destinatario", ed è lì che nasce l'errore più comune.
Lo scarto richiede una correzione e una nuova trasmissione. La mancata consegna non richiede niente: la fattura è valida, il destinatario la troverà nella sua area riservata. Un sistema che tratta la MC come un fallimento spinge l'operatore a reinviare fatture perfettamente valide, e il risultato sono numeri duplicati — un problema molto peggiore di quello che credeva di risolvere.
Per lo stesso motivo "rifiutata" (EC02 dal committente PA) e "scartata" (NS dallo SdI) devono restare stati distinti nei dati, anche se per l'operatore richiedono la stessa azione. Le cause sono diverse, e fra sei mesi la differenza serve a qualcuno.
Il destinatario è dove le fatture si rompono
La parte anagrafica sembra banale e non lo è. Il CodiceDestinatario ha tre casi che una struttura ricettiva incontra tutti:
- Il codice del destinatario, sette caratteri, quando l'ha comunicato.
0000000, quando si ripiega sulla PEC o sull'area riservata.XXXXXXX, il caso del soggetto estero — che per un albergo o un B&B non è un caso raro, è metà della clientela.
Sbagliare questo campo non produce un errore di contabilità: produce uno scarto, cioè una fattura che non esiste, scoperta giorni dopo da chi legge le notifiche. Se nessuno le legge, scoperta mai.
La Natura va per riga, non per totale
Una fattura con operazioni a IVA ordinaria e operazioni esenti o non soggette non si può valutare dal totale. Il software deve guardare le righe: ogni riga senza aliquota deve portare la propria Natura, e una fattura mista è perfettamente legittima.
Controllare solo il totale è un bug che non si vede sulle fatture semplici e colpisce esattamente quelle complicate: soggiorno con IVA, tassa di soggiorno fuori campo, qualche extra. Proprio la fattura che non vuoi sbagliare.
Serve un registro delle trasmissioni, non un campo di stato
Una colonna "stato fattura" non basta, perché il percorso di una fattura ha una storia: quando è partita, con quale nome file, quanti tentativi, cosa ha risposto lo SdI, quale riferimento esterno ha assegnato.
In Boris ogni fattura ha una riga di consegna dedicata — una sola per fattura, con stato, tentativi, hash della richiesta, riferimento esterno e corpo della risposta. Serve a due cose concrete. Primo: un reinvio accidentale è riconoscibile invece di diventare una seconda trasmissione. Secondo: quando un commercialista chiede perché una fattura di marzo non risulta, la risposta è un record e non una ricostruzione.
Le domande da fare a un fornitore
- Dove vedo, oggi, le fatture scartate e non ritrasmesse?
- La mancata consegna viene mostrata come errore o come esito valido?
- Legge l'esito EC01/EC02 dentro la notifica, o solo il tipo di notifica?
- Come gestisce i clienti esteri nel CodiceDestinatario?
- Una fattura mista porta la Natura sulle singole righe?
Nessuna di queste domande riguarda l'aspetto della fattura, ed è il punto: il PDF è la parte che vede il cliente, le notifiche sono la parte che decide se la fattura esiste.
Domande frequenti
Qual è la differenza fra trasmessa, consegnata e accettata?
Trasmessa significa che il file è partito. Consegnata (RC) significa che lo SdI l'ha recapitata al destinatario. Accettata è un'altra cosa ancora e riguarda solo le fatture verso la pubblica amministrazione, dove il committente può rifiutare: arriva come NotificaEsito con codice EC01 (accettata) o EC02 (rifiutata). Un software che mostra "inviata" e si ferma lì ti sta dicendo la cosa meno utile delle tre.
Cosa fare con una NotificaScarto (NS)?
Lo scarto significa che la fattura non è mai esistita per il fisco. Va corretta e ritrasmessa, e qui c'è la trappola: non è un reinvio dello stesso file, perché il file scartato porta errori di contenuto. La fattura va rigenerata, e lo stato precedente deve restare visibile — una fattura scartata e mai ritrasmessa è esattamente il buco che si scopre a fine trimestre.
E la mancata consegna (MC)?
Non è un errore tuo. Lo SdI ha accettato la fattura ma non è riuscito a recapitarla: la mette a disposizione nell'area riservata del destinatario e la fattura è comunque valida. Non si ritrasmette. Un sistema che la tratta come un fallimento ti fa reinviare fatture già valide, che è il modo più rapido per duplicare numeri.
Cosa significa la decorrenza termini (DT)?
Vale per le fatture verso la PA: il committente non si è espresso entro il termine e la fattura si considera a tutti gli effetti andata a buon fine. È un esito finale, non un'attesa. Confonderlo con "in sospeso" tiene aperte per sempre righe che sono chiuse.
