Lettere di Intento
Gestione plafond esportatori abituali — Dichiarazioni ricevute ed emesse, tracciamento utilizzi, integrazione documenti
Riferimenti normativi
- Art. 8, c. 1, lett. c) DPR 633/72: consente agli esportatori abituali di acquistare beni e servizi senza applicazione dell'IVA, nei limiti del plafond maturato. La dichiarazione d'intento e lo strumento con cui il cessionario/committente comunica al fornitore la volonta di avvalersi di tale agevolazione.
- D.L. 746/1983 (conv. L. 17/1984): disciplina le modalita di utilizzo del plafond da parte degli esportatori abituali, definendo i requisiti soggettivi (rapporto esportazioni/volume d'affari superiore al 10% nell'anno precedente) e le regole di calcolo del plafond fisso e mobile.
- Provvedimento Agenzia delle Entrate 27/02/2020 (prot. 96911): stabilisce l'obbligo di trasmissione telematica delle dichiarazioni d'intento da parte dell'esportatore abituale. Il fornitore deve verificare l'avvenuta presentazione tramite il cassetto fiscale prima di emettere fattura in regime di non imponibilita. Il numero di protocollo AdE deve essere riportato in fattura.
- Art. 7, c. 4-bis, D.Lgs. 471/1997: prevede sanzioni dal 100% al 200% dell'imposta per chi effettua operazioni senza addebito IVA in assenza di dichiarazione d'intento valida, nonche per l'esportatore abituale che emette dichiarazioni d'intento in misura eccedente il plafond disponibile.
Il modulo Lettere di Intento gestisce il ciclo completo delle dichiarazioni d'intento, sia ricevute dai clienti esportatori abituali, sia emesse verso i propri fornitori quando l'azienda stessa opera come esportatore abituale.
Il sistema garantisce il tracciamento automatico del plafond: ogni documento fiscale (fattura, nota di credito) che richiama una lettera di intento aggiorna in tempo reale l'importo utilizzato. Quando il plafond residuo scende sotto la soglia di alert configurata, il sistema genera una notifica preventiva per evitare lo splafonamento.
Gestione del plafond
Il plafond rappresenta l'importo massimo di acquisti/vendite in regime di non imponibilita IVA. Il modulo calcola in tempo reale tre grandezze fondamentali: plafond totale (importo dichiarato), plafond utilizzato (somma dei documenti collegati) e plafond residuo (differenza). L'alert percentuale configurabile avvisa l'operatore quando il residuo scende sotto la soglia impostata.
Il modulo distingue due tipologie di lettera di intento, ciascuna con un flusso operativo specifico:
| Tipo | Soggetto dichiarante | Direzione | Utilizzo nel ciclo documentale |
|---|---|---|---|
| RICEVUTA | Il cliente (esportatore abituale) | Il cliente dichiara al fornitore (la nostra azienda) di voler acquistare senza IVA | Applicata nelle fatture di vendita: l'azienda emette fattura non imponibile Art. 8 c.1 lett. c) riportando il protocollo AdE della dichiarazione ricevuta |
| EMESSA | La nostra azienda (esportatore abituale) | L'azienda dichiara al proprio fornitore di voler acquistare senza IVA | Applicata nelle fatture di acquisto: il fornitore emette fattura non imponibile sulla base della dichiarazione ricevuta dalla nostra azienda |
La dashboard del modulo fornisce una visione d'insieme immediata tramite indicatori KPI aggiornati in tempo reale:
| KPI | Descrizione |
|---|---|
| Lettere attive | Numero di lettere di intento attualmente in stato valido (INVIATA, RICEVUTA, UTILIZZATA), suddivise per tipo (Ricevute / Emesse) |
| Plafond totale | Somma degli importi dichiarati in tutte le lettere attive |
| Plafond utilizzato | Somma degli importi gia utilizzati tramite documenti fiscali collegati |
| Plafond residuo | Differenza tra plafond totale e utilizzato; indica la capienza residua per nuove operazioni non imponibili |
| In scadenza | Numero di lettere la cui data di fine validita ricade entro i prossimi 30 giorni. Evidenziate con colore di warning per sollecitare il rinnovo |
Per creare una nuova lettera di intento, seguire la procedura:
- Accedere al menu IVA → Lettere di Intento e premere il pulsante + Nuova Lettera.
- Selezionare il Tipo: Ricevuta (dal cliente) o Emessa (verso il fornitore).
- Il sistema propone automaticamente lo Stato iniziale BOZZA.
- Verificare Anno e Progressivo: il sistema assegna automaticamente il numero progressivo nell'ambito dell'anno solare.
- Inserire il Protocollo AdE: il numero di protocollo telematico rilasciato dall'Agenzia delle Entrate a seguito della trasmissione della dichiarazione.
- Selezionare il Soggetto: il cliente (per lettere ricevute) o il fornitore (per lettere emesse) dall'anagrafica Soggetti.
- Compilare le Date di validita: data inizio e data fine del periodo di operativita della dichiarazione.
- Indicare l'importo del Plafond: il valore massimo di operazioni non imponibili coperte dalla dichiarazione.
- Configurare la Soglia alert %: percentuale di utilizzo del plafond superata la quale il sistema genera una notifica (es. 80%).
- Premere Salva per confermare la registrazione.
| Campo | Obbligatorio | Note |
|---|---|---|
| Tipo | Si | Ricevuta o Emessa |
| Stato | Si | Impostato automaticamente a BOZZA |
| Anno | Si | Anno solare di riferimento |
| Progressivo | Si | Assegnato automaticamente dal sistema |
| Protocollo AdE | Si (per invio) | Necessario per passare allo stato INVIATA |
| Soggetto | Si | Cliente o Fornitore dall'anagrafica |
| Data inizio validita | Si | Inizio del periodo di operativita |
| Data fine validita | Si | Scadenza della dichiarazione |
| Plafond | Si | Importo massimo in euro |
| Soglia alert % | No | Default 80%. Genera notifica al superamento |
Ogni lettera di intento attraversa un ciclo di vita definito da stati precisi. Le transizioni di stato sono controllate dal sistema per garantire la coerenza dei dati.
| Stato | Descrizione | Transizioni possibili |
|---|---|---|
| BOZZA | Lettera creata ma non ancora completata. Tutti i campi sono modificabili. Non puo essere utilizzata nei documenti. | INVIATA, ANNULLATA |
| INVIATA | La dichiarazione e stata trasmessa telematicamente all'Agenzia delle Entrate (protocollo AdE compilato). Per le lettere EMESSE indica l'avvenuto invio; per le RICEVUTE indica la presa in carico. | RICEVUTA, ANNULLATA |
| RICEVUTA | La dichiarazione e stata validata e confermata. La lettera e operativa e puo essere selezionata nei documenti fiscali. | UTILIZZATA (automatico), ANNULLATA |
| UTILIZZATA | Almeno un documento fiscale e stato collegato alla lettera. Il plafond utilizzato e maggiore di zero. Stato impostato automaticamente al primo utilizzo. | ESAURITA (automatico), SCADUTA (automatico), ANNULLATA |
| ESAURITA | Il plafond residuo ha raggiunto zero. Non e possibile collegare ulteriori documenti. | ANNULLATA |
| SCADUTA | La data di fine validita e stata superata. Stato impostato automaticamente dal sistema. Non e possibile collegare nuovi documenti. | ANNULLATA |
| ANNULLATA | Lettera annullata manualmente dall'operatore. I documenti gia collegati restano validi ma non e possibile aggiungerne di nuovi. | — (stato finale) |
La sezione Storico utilizzi, presente nella scheda di ogni lettera di intento, elenca tutti i movimenti che hanno inciso sul plafond. I movimenti possono essere di due tipi:
| Tipo movimento | Origine | Descrizione |
|---|---|---|
| Automatico | Salvataggio documento | Registrato automaticamente quando una fattura, nota di credito o DDT viene salvato con riferimento alla lettera di intento. Riporta numero documento, data, importo e tipo operazione. |
| Manuale | Operatore | Inserito manualmente dall'operatore per registrare utilizzi non derivanti da documenti gestiti nel sistema (es. operazioni doganali, acquisti registrati in altri software). |
Registrazione manuale di un utilizzo
- Aprire la scheda della lettera di intento e selezionare la tab Storico utilizzi.
- Premere il pulsante + Aggiungi utilizzo.
- Compilare i campi: data operazione, descrizione, importo.
- Premere Salva. Il plafond utilizzato viene aggiornato immediatamente.
Eliminazione di un utilizzo
- Nello storico utilizzi, individuare il movimento da eliminare.
- Premere l'icona Elimina sulla riga corrispondente.
- Confermare l'eliminazione nella finestra di dialogo. Il plafond residuo viene ricalcolato automaticamente.
Il modulo Lettere di Intento si integra con il ciclo documentale attivo e passivo. Durante la creazione di fatture, note di credito e DDT, l'operatore puo collegare il documento a una lettera di intento valida.
Procedura di collegamento
- Durante la creazione o modifica di un documento, accedere al tab Generale.
- Nel campo Lettera di Intento, selezionare la dichiarazione applicabile dall'elenco. Il sistema mostra solo le lettere valide (stato RICEVUTA o UTILIZZATA) associate al soggetto del documento e con plafond residuo sufficiente.
- Il sistema verifica automaticamente che l'importo del documento non superi il plafond residuo della lettera selezionata. In caso di capienza insufficiente, viene mostrato un alert di plafond insufficiente che impedisce il salvataggio.
- Al salvataggio del documento, il sistema registra automaticamente l'utilizzo nello storico della lettera e aggiorna il plafond utilizzato e residuo.
- Il numero di protocollo AdE della lettera di intento viene riportato automaticamente nel documento fiscale, come previsto dalla normativa.
Aggiornamento strutturale del modulo Lettere di Intento con tracciamento cronologico delle modifiche, cestino compliance-safe limitato alle BOZZE e operazioni massive con validazione delle transizioni di stato. Il design rispetta i vincoli fiscali: una lettera INVIATA/RICEVUTA e stata trasmessa all'Agenzia delle Entrate e non e cancellabile.
Soft-delete limitato alle BOZZE
L'eliminazione di una lettera segue regole differenti in base allo stato:
- BOZZA: eliminazione = soft-delete (la lettera va nel cestino, e ripristinabile).
- INVIATA / RICEVUTA / UTILIZZATA / ESAURITA / SCADUTA / ANNULLATA: eliminazione non consentita (errore 409). Per neutralizzare una lettera gia emessa usa lo stato ANNULLATA, che preserva la tracciabilita fiscale.
Cestino e ripristino
Nella lista e disponibile il pulsante 🗑 Apri cestino (BOZZE). Mostra solo le bozze cancellate con metadati di eliminazione (data e autore):
- ↺ Ripristina: la bozza torna nella lista attiva.
- ✗ Definitivo: eliminazione fisica irreversibile. Consentita solo per BOZZE senza utilizzi collegati.
Audit log completo
Ogni modifica a una lettera (PUT o PATCH stato) viene registrata nella tabella log_modifiche_lettere_intento con valore precedente, valore nuovo, utente e timestamp. I campi tracciati sono 12: tipo, numero protocollo, soggetto, date (emissione, inizio, fine, ricezione), importo massimo, riferimento normativo, descrizione, stato, percentuale alert.
Endpoint: GET /api/lettere-intento/:id/audit-log. Nella lista e stato aggiunto il pulsante 🕔 Storico modifiche per riga che apre un modal con la cronologia.
Validazione transizioni stato
Il backend valida le transizioni di stato. Tentativi non validi (es. RICEVUTA → BOZZA) vengono rifiutati con errore 409.
| Da | Verso (consentite) |
|---|---|
| BOZZA | INVIATA, RICEVUTA, ANNULLATA |
| INVIATA | UTILIZZATA, SCADUTA, ANNULLATA |
| RICEVUTA | UTILIZZATA, SCADUTA, ANNULLATA |
| UTILIZZATA | ESAURITA, SCADUTA, ANNULLATA |
| ESAURITA | ANNULLATA |
| SCADUTA | ANNULLATA |
| ANNULLATA | — (terminale) |
Timeline lettera
L'endpoint GET /api/lettere-intento/:id/timeline restituisce una vista aggregata: audit modifiche + utilizzi registrati, ordinati per data decrescente.
Operazioni massive
Nella lista e stata aggiunta la selezione multipla con checkbox. Con una o piu lettere selezionate compare una barra blu con:
- ⇄ Cambia stato…: cambio stato massivo con validazione transizioni. Le lettere con transizione non valida vengono ignorate e riportate come invalidi.
- 📅 Marca scadute: utility che porta SCADUTE tutte le lettere selezionate con dataFine nel passato e stato attivo (INVIATA/RICEVUTA/UTILIZZATA).
- 🗑 Cestino: soft-delete massivo; applicato solo alle BOZZE (le altre vengono bloccate).
• Pacchetto
FATTURAZIONE attivo sul workspace (configurabile da SUPERADMIN in /admin/pacchetti)
• Profilo attività compatibile: Farmacia, Ferramenta, Elettronica (esportatori abituali)
• Permesso utente abilitato in Modifica Utente → Moduli
I tre livelli si applicano in intersezione. Dettagli completi in Gerarchia Pacchetti+Profilo+Utente.
A partire dalla versione 2.2, il modulo Lettere di Intento adotta lo standard di certificazione NOX con i seguenti presidi:
Cestino e soft-delete
Gli elementi cancellati non vengono rimossi fisicamente ma spostati in un cestino interno (campi cancellatoIl / cancellatoDa). Dalla toolbar il pulsante Cestino alterna tra vista attivi e vista cestino. Dal cestino è possibile:
- Ripristinare l'elemento (riportarlo nella lista attiva) — operazione riservata ad amministratori.
- Eliminare definitivamente con motivazione obbligatoria — azione irreversibile, riservata ad amministratori, tracciata nell'audit log.
Azioni massive (bulk)
È possibile selezionare più elementi con le checkbox della prima colonna. Appare una barra inferiore con le azioni disponibili: Controllo plafond, audit su numeri protocollo. La risposta indica N operazioni riuscite / M fallite; i dettagli delle fallite compaiono nella console browser (F12).
Storico modifiche (audit log)
L'icona history nelle azioni di riga apre un modal con la storia completa delle modifiche: data, campo, valore precedente, valore nuovo, operatore, eventuale motivazione. I record di audit non sono modificabili né eliminabili via UI. Conservazione: indefinita (art. 2220 c.c. — 10 anni minimo).
Mascheramento dati sensibili (GDPR art. 32)
Se i campi modificati contengono dati sensibili (IBAN, Codice Fiscale, Partita IVA, password/token), l'audit log salva il valore mascherato anziché in chiaro:
| Campo | Esempio originale | Nel log |
|---|---|---|
| IBAN | IT60X0542811101000000123456 | IT60****3456 |
| Codice Fiscale (PF) | RSSMRA80A01H501Z | RSSMRA****501Z |
| Partita IVA | 12345678901 | 123****901 |
| Password / token | (qualsiasi) | ***REDACTED*** |
Timeline aggregata
Per ciascun elemento è disponibile una vista Timeline che aggrega in ordine cronologico audit, eventi del ciclo di vita ed eventuali entità collegate (es. documenti, movimenti, storni).
RBAC uniforme
Tutte le azioni distruttive o massive (soft-delete, ripristino, eliminazione definitiva, bulk, storno) richiedono il ruolo ADMIN o superiore. Gli operatori possono continuare a creare / modificare / consultare secondo le proprie abilitazioni.