Italy FatturaPA SdI Status
Import and reconcile Italian Sistema di Interscambio (SdI) receipt notifications into FatturaPA invoice lifecycle states
Italy FatturaPA SdI Status turns the receipt and notification
files your invoices receive from the Italian Sistema di Interscambio
(SdI) into a clean, reconciled invoice lifecycle inside Odoo. Drop in
the .xml / .p7m receipts your own intermediary
delivers to you, and the module parses every notification type, advances
each invoice through its real SdI states, and flags everything that needs
your attention — rejections to re-issue, undelivered invoices, and
public-administration decisions running past the 15-day window.
This is a status satellite: it imports and reconciles the receipts you already receive. It does not transmit invoices to the SdI on its own accreditation — transmission stays with your existing channel (your intermediary / SDICoop credentials).
Every SdI notification type, fully parsed
Delivery & transport
- RC – Ricevuta di Consegna (delivered to the recipient)
- MC – Notifica di Mancata Consegna (valid but not delivered; available in the recipient's tax drawer)
- AT – Attestazione di Avvenuta Trasmissione (undeliverable, hand-delivery proof)
Outcomes & rejections
- NS – Notifica di Scarto (file rejected — the invoice was not legally issued; error codes captured)
- NE – Notifica di Esito with EsitoCommittente EC01 (accepted) / EC02 (refused)
- DT – Notifica di Decorrenza Termini (15-day silence, treated as delivered)
- MT – File dei Metadati (recorded, no state change)
A reconciled invoice lifecycle
Each imported notification becomes an immutable event on the invoice's status record. The current state is derived from the full event history with a validated state machine, so an illegal sequence (for example a delivery receipt after a rejection) is refused rather than silently recorded.
| State | Set by | Meaning |
|---|---|---|
| Sent to SdI | manual / transmission | Transmitted, awaiting an SdI outcome |
| Delivered | RC | Delivered to the recipient |
| Not Delivered (Available) | MC | Valid invoice available in the tax drawer |
| Transmission Attested | AT | Undeliverable; hand-delivery attestation issued |
| Accepted by PA | NE / EC01 | Public administration accepted the invoice |
| Refused by PA | NE / EC02 | Public administration refused the invoice |
| Deadline Expired (Delivered) | DT | 15-day PA window elapsed; treated as delivered |
| Rejected (Scartata) | NS | File rejected; invoice not issued — correct & re-send |
Key features
One-click & batch import
Paste a single notification XML, upload a .p7m signed
receipt, or drop in a ZIP of many receipts at once. Each is
matched to its invoice by the IdentificativoSdI or the invoice
file name parsed from the SdI naming convention
(IT01234567890_00001_RC_001.xml).
Rejection diagnostics
Notifica di Scarto error codes and descriptions are captured verbatim, so you immediately see why an invoice was rejected and what to fix before re-issuing.
15-day PA decision window
For invoices to the Public Administration the module computes the published 15-day acceptance/refusal deadline from the delivery date and flags invoices whose window has lapsed without a decision.
SLA monitoring & daily scan
A configurable SLA flags invoices stalled while waiting for the SdI. A daily scheduled action posts a chatter alert on stalled and PA-overdue invoices.
Accounting integration
A button and dedicated page on customer invoices and credit notes open the linked SdI status, with the current state and SdI identifier shown directly on the invoice.
Multi-company & secure
Per-company record rules, dedicated user/manager security groups, and an append-only event log. Receipts are parsed locally; no data leaves your database.
Reporting you can act on
Filter and group invoices by SdI state, transmission format (FPA12 / FPR12) and partner. Built-in filters surface open, settled, rejected, refused, stalled and PA-overdue invoices, and a per-state funnel summarises the whole pipeline at a glance.
The full lifecycle engine is implemented as a framework-free, unit-tested Python core, with realistic SdI receipt fixtures covering every notification type.
Supported versions
Odoo 18.0 and 19.0 — Community and Enterprise. Builds on the standard Accounting app only; no third-party or Enterprise-only dependencies.
Screenshots
Settings
Sdi Events
Import Sdi Receipt
Invoice Status
Update date: 2026-07-02