CodeNine

Work / An Italian client · client not nameable

Invoices that are wrong get rejected by the state.

SDI e-invoicing compliance for an Italian client. Every invoice clears a government exchange before it reaches the customer, or it does not count as issued.

Domain
Statutory e-invoicing
Region
Italy, EU
Our role
Build and compliance integration
Attribution
Describe-only, at the client’s request

The path every invoice takes

Submission is not delivery.

Solid edges are the happy path. The dashed edge is the one most implementations get wrong.

SDI e-invoicing submission path, including the rejection loopAn invoice is issued in the client system, then serialised into the statutory XML format and validated locally before it is sent. It is submitted to SDI, the Italian government exchange, which either accepts and delivers it to the customer, or rejects it. On rejection the invoice must be corrected and resubmitted without gapping or repeating the invoice number, and the original submission plus the state's response are both retained for audit. Until acceptance comes back, the invoice does not legally count as issued.01 · OursInvoice issued02 · OursFormat & validate03 · Not oursSDI exchange04 · DeliveredCustomerXMLAcceptGovernment system · accepts or rejectsReject · correct · resubmitWhat the loop costs you if it is wrongNumberingCannot gap or repeatunder retries orconcurrent issuance.OutcomesAccept, reject andnon-delivery each needa resolution path.RetentionDocument, response andreconciliation, retrievableyears later.ConsequenceUntil acceptance returns,the invoice does notlegally count as issued.

What the regulation requires

There is no partly valid invoice.

The Sistema di Interscambio accepts or rejects. Software that is approximately right produces invoices a business cannot legally rely on.

01
A prescribed XML format, validated before submission
Field-level rules, controlled vocabularies, and conditional requirements that depend on the transaction type.
02
Asynchronous outcomes, handled properly
Submission is not delivery. Acceptance, rejection and non-delivery notices arrive later and each needs its own resolution path.
03
Numbering that cannot gap or repeat
Sequence integrity under retries and concurrent issuance, which is a database problem before it is a compliance one.
04
Retention and an audit trail
The submitted document, the state’s response, and the reconciliation between them, all retrievable years later.

Why this one is on the site

Same failure shape as the fintech work.

Money moves, an obligation is tracked, and being wrong costs the client directly. Whether the counterparty is a borrower or a tax authority changes the rules, not the discipline.

Regulated complianceXML validationAudit trailEU
Describe-only engagement, no screenshot

On naming

The work is nameable. The company is not.

Where a client asks not to be named, we describe the work concretely instead and say that we are doing so. If you need a reference for compliance work specifically, ask on a call. That is a conversation the client will have.