| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) |
| Lines of code | 1729 |
| Technical Name |
fatturapa_status_satellite |
| License | OPL-1 |
| Website | https://gencbaris.com/odoo_plugins/ |
| Versions | 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Invoicing (account) |
| Lines of code | 1729 |
| Technical Name |
fatturapa_status_satellite |
| License | OPL-1 |
| Website | https://gencbaris.com/odoo_plugins/ |
| Versions | 18.0 19.0 |
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
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module