API
- Introduction
- Authentication
- Idempotency
- Versioning
- Silo
- Transform
- Sequences
- Access
- Utils
Italy - SDI
Issue invoices in Italy
Introduction
Invopop’s SDI Italy provider allows you to generate and issue FatturaPA documents in Italy.
Prerequisites
To issue invoices, you need:
- Supplier details:
- Company name and address
- Italian tax ID (Partita IVA)
- For B2B sales, customer details including:
- Italian tax ID (Partita IVA)
- Invoice line items with
- Price
- VAT rates
Setup
Follow these steps to configure your Invopop Workspace for SDI invoicing:
Connect the SDI Italy app
- Navigate to Configuration > Apps.
- Locate SDI Italy in the app discovery list.
- Click Connect to activate.
No additional configuration is needed.
Configure invoice workflow
First, review our workflows guide to understand the basics.
Create an Invoices workflow with these essential steps:
- Sign Envelope - Signs the GOBL document. Can be substituted with
Add Sequential Code
with theSign Document
option enabled. - Send to SDI (Italy) - Generates the required FatturaPA document and submits it to SDI. If
sandbox
is chosen as the environment, the simulated response from SDI has to be set.
SDI does not have a sandbox environment. When sandbox
mode is selected, Invopop’s third party submission service, A-Cube, simulates a response from SDI.
You can copy and paste the following JSON while editing a Workflow in “developer” mode. This example adds support for setting states on silo entries, which we strongly recomend.
{
"name": "Invoice - Success with States",
"description": "Issue an invoice and set the state to `sent` if successful",
"steps": [
{
"id": "1a692ae0-cd12-11ef-998c-e97f18c9212e",
"name": "Set State",
"config": {
"state": "processing"
},
"summary": "Set state to `processing`{.state .processing}",
"provider": "silo.state"
},
{
"id": "1855b430-cd12-11ef-998c-e97f18c9212e",
"name": "Sign Envelope",
"provider": "silo.close"
},
{
"id": "2042f860-cd12-11ef-998c-e97f18c9212e",
"name": "Send to SDI (Italy)",
"next": [
{
"status": "KO",
"step_id": "2d5d7660-cd12-11ef-998c-e97f18c9212e"
}
],
"config": {
"response": "NE",
"environment": "sandbox"
},
"summary": "Sandbox · Accepted by PA (Notifica esito)",
"provider": "sdi-it"
},
{
"id": "236965b0-cd12-11ef-998c-e97f18c9212e",
"name": "Generate PDF",
"config": {
"locale": "it",
"date_format": "%Y-%m-%d",
"logo_height": 40
},
"summary": "Italian",
"provider": "pdf"
},
{
"id": "2b6db450-cd12-11ef-998c-e97f18c9212e",
"name": "Set State",
"next": [
{
"stop": true,
"status": "NA"
}
],
"config": {
"state": "sent"
},
"summary": "Set state to `sent`{.state .sent}",
"provider": "silo.state"
},
{
"id": "2d5d7660-cd12-11ef-998c-e97f18c9212e",
"name": "Set State",
"config": {
"state": "error"
},
"summary": "Set state to `error`{.state .error}",
"provider": "silo.state"
}
]
}
Running
Invopop uses the GOBL library to process conversions, in particular the GOBL FatturaPA library. Some example invoices are provided below, along with an example workflow to send the invoices to. We also recommend using the GOBL Builder to create your own invoices.
Be sure to set the regime
field to IT
in your invoices and add the it-sdi-v1
addon. This will add some extra validations and normalizations to ensure the document is compliant, and automatically add the necessary extensions, which can be found here.
Example Invoices
{
"$schema": "https://gobl.org/draft-0/bill/invoice",
"$regime": "IT",
"$addons": [
"it-sdi-v1"
],
"uuid": "0190a63a-1a80-7e1e-a868-08c7859b6470",
"type": "standard",
"series": "FT",
"code": "020",
"issue_date": "2024-07-12",
"currency": "EUR",
"tax": {
"prices_include": "VAT",
"ext": {
"it-sdi-document-type": "TD01",
"it-sdi-format": "FPR12"
}
},
"supplier": {
"name": "Company Name S.r.l.",
"tax_id": {
"country": "IT",
"code": "12345678903"
},
"addresses": [
{
"num": "102",
"street": "Via California",
"locality": "Palermo",
"region": "PA",
"code": "33213",
"country": "IT"
}
],
"registration": {
"capital": "50000.00",
"currency": "EUR",
"office": "RM",
"entry": "123456"
},
"ext": {
"it-sdi-fiscal-regime": "RF01"
}
},
"lines": [
{
"i": 1,
"quantity": "1",
"item": {
"name": "Cleaning services",
"price": "125.00"
},
"sum": "125.00",
"taxes": [
{
"cat": "VAT",
"rate": "standard",
"percent": "22.0%"
}
],
"total": "125.00"
}
],
"totals": {
"sum": "125.00",
"tax_included": "22.54",
"total": "102.46",
"taxes": {
"categories": [
{
"code": "VAT",
"rates": [
{
"key": "standard",
"base": "102.46",
"percent": "22.0%",
"amount": "22.54"
}
],
"amount": "22.54"
}
],
"sum": "22.54"
},
"tax": "22.54",
"total_with_tax": "125.00",
"payable": "125.00"
}
}
{
"$schema": "https://gobl.org/draft-0/bill/invoice",
"$regime": "IT",
"$addons": [
"it-sdi-v1"
],
"$tags": [
"freelance"
],
"uuid": "0190c0ec-8109-756b-a4f0-88c4b542ab6e",
"type": "standard",
"series": "SAMPLE",
"code": "001",
"issue_date": "2023-03-02",
"currency": "EUR",
"tax": {
"ext": {
"it-sdi-document-type": "TD06",
"it-sdi-format": "FPR12"
}
},
"supplier": {
"name": "MªF. Services",
"tax_id": {
"country": "IT",
"code": "12345678903"
},
"people": [
{
"name": {
"given": "GIANCARLO",
"surname": "ROSSI"
}
}
],
"addresses": [
{
"num": "1",
"street": "VIALE DELLA LIBERTÀ",
"locality": "ROMA",
"region": "RM",
"code": "00100",
"country": "IT"
}
],
"ext": {
"it-sdi-fiscal-regime": "RF01"
}
},
"customer": {
"name": "MARIO LEONI",
"tax_id": {
"country": "IT",
"code": "09876543217"
},
"addresses": [
{
"num": "32",
"street": "VIALE DELI LAVORATORI",
"locality": "FIRENZE",
"region": "FI",
"code": "50100",
"country": "IT"
}
]
},
"lines": [
{
"i": 1,
"quantity": "20",
"item": {
"name": "Development services",
"price": "90.00",
"unit": "h"
},
"sum": "1800.00",
"taxes": [
{
"cat": "VAT",
"rate": "standard",
"percent": "22.0%"
}
],
"total": "1800.00"
}
],
"totals": {
"sum": "1800.00",
"total": "1800.00",
"taxes": {
"categories": [
{
"code": "VAT",
"rates": [
{
"key": "standard",
"base": "1800.00",
"percent": "22.0%",
"amount": "396.00"
}
],
"amount": "396.00"
}
],
"sum": "396.00"
},
"tax": "396.00",
"total_with_tax": "2196.00",
"payable": "2196.00"
}
}
{
"$schema": "https://gobl.org/draft-0/bill/invoice",
"$regime": "IT",
"$addons": [
"it-sdi-v1"
],
"$tags": [
"freelance"
],
"uuid": "0190c0ec-8109-756b-a4f0-88c4b542ab6e",
"type": "standard",
"series": "SAMPLE",
"code": "001",
"issue_date": "2023-03-02",
"currency": "EUR",
"tax": {
"ext": {
"it-sdi-document-type": "TD06",
"it-sdi-format": "FPR12"
}
},
"supplier": {
"name": "MªF. Services",
"tax_id": {
"country": "IT",
"code": "12345678903"
},
"people": [
{
"name": {
"given": "GIANCARLO",
"surname": "ROSSI"
}
}
],
"addresses": [
{
"num": "1",
"street": "VIALE DELLA LIBERTÀ",
"locality": "ROMA",
"region": "RM",
"code": "00100",
"country": "IT"
}
],
"emails": [
{
"addr": "billing@example.com"
}
],
"telephones": [
{
"num": "999999999"
}
],
"registration": {
"capital": "50000.00",
"currency": "EUR",
"office": "RM",
"entry": "123456"
},
"ext": {
"it-sdi-fiscal-regime": "RF02"
}
},
"customer": {
"name": "MARIO LEONI",
"tax_id": {
"country": "IT",
"code": "09876543217"
},
"people": [
{
"name": {
"prefix": "Dott.",
"given": "MARIO",
"surname": "LEONI"
}
}
],
"inboxes": [
{
"key": "it-sdi-code",
"code": "ABCDEF1"
}
],
"addresses": [
{
"num": "32",
"street": "VIALE DELI LAVORATORI",
"locality": "FIRENZE",
"region": "FI",
"code": "50100",
"country": "IT"
}
],
"emails": [
{
"addr": "leoni@mario.com"
}
]
},
"lines": [
{
"i": 1,
"quantity": "20",
"item": {
"name": "Development services",
"price": "90.00",
"unit": "h"
},
"sum": "1800.00",
"discounts": [
{
"reason": "Special discount",
"percent": "10%",
"amount": "180.00"
}
],
"taxes": [
{
"cat": "VAT",
"rate": "standard",
"percent": "22.0%"
}
],
"total": "1620.00"
},
{
"i": 2,
"quantity": "1",
"item": {
"name": "Special Untaxed Work",
"price": "100.00",
"unit": "h"
},
"sum": "100.00",
"taxes": [
{
"cat": "VAT",
"rate": "exempt",
"ext": {
"it-sdi-exempt": "N2.2",
"it-sdi-vat-liability": "S"
}
}
],
"total": "100.00"
}
],
"discounts": [
{
"i": 1,
"reason": "10th year anniversary discount",
"base": "1720.00",
"percent": "50%",
"amount": "860.00"
}
],
"charges": [
{
"i": 1,
"reason": "10th year anniversary charge",
"base": "1720.00",
"percent": "10%",
"amount": "172.00"
}
],
"payment": {
"instructions": {
"key": "card",
"ext": {
"it-sdi-payment-means": "MP08"
}
}
},
"totals": {
"sum": "1720.00",
"discount": "860.00",
"charge": "172.00",
"total": "1032.00",
"taxes": {
"categories": [
{
"code": "VAT",
"rates": [
{
"key": "standard",
"base": "1620.00",
"percent": "22.0%",
"amount": "356.40"
},
{
"key": "exempt",
"ext": {
"it-sdi-exempt": "N2.2",
"it-sdi-vat-liability": "S"
},
"base": "100.00",
"amount": "0.00"
}
],
"amount": "356.40"
}
],
"sum": "356.40"
},
"tax": "356.40",
"total_with_tax": "1388.40",
"payable": "1388.40"
}
}
{
"$schema": "https://gobl.org/draft-0/bill/invoice",
"$regime": "IT",
"$addons": [
"it-sdi-v1"
],
"$tags": [
"freelance"
],
"uuid": "019270f3-513e-71e2-b2e3-47f8321a09ac",
"type": "credit-note",
"series": "CN",
"code": "001",
"issue_date": "2024-10-09",
"currency": "EUR",
"preceding": [
{
"uuid": "0190c0ec-8109-756b-a4f0-88c4b542ab6e",
"type": "standard",
"issue_date": "2023-03-02",
"series": "SAMPLE",
"code": "001"
}
],
"tax": {
"ext": {
"it-sdi-document-type": "TD04",
"it-sdi-format": "FPR12"
}
},
"supplier": {
"name": "MªF. Services",
"tax_id": {
"country": "IT",
"code": "12345678903"
},
"people": [
{
"name": {
"given": "GIANCARLO",
"surname": "ROSSI"
}
}
],
"addresses": [
{
"num": "1",
"street": "VIALE DELLA LIBERTÀ",
"locality": "ROMA",
"region": "RM",
"code": "00100",
"country": "IT"
}
],
"registration": {
"capital": "50000.00",
"currency": "EUR",
"office": "RM",
"entry": "123456"
},
"ext": {
"it-sdi-fiscal-regime": "RF02"
}
},
"customer": {
"name": "MARIO LEONI",
"tax_id": {
"country": "IT",
"code": "09876543217"
},
"people": [
{
"name": {
"prefix": "Dott.",
"given": "MARIO",
"surname": "LEONI"
}
}
],
"addresses": [
{
"num": "32",
"street": "VIALE DELI LAVORATORI",
"locality": "FIRENZE",
"region": "FI",
"code": "50100",
"country": "IT"
}
]
},
"lines": [
{
"i": 1,
"quantity": "20",
"item": {
"name": "Development services",
"price": "90.00",
"unit": "h"
},
"sum": "1800.00",
"taxes": [
{
"cat": "VAT",
"rate": "standard",
"percent": "22.0%"
}
],
"total": "1800.00"
}
],
"totals": {
"sum": "1800.00",
"total": "1800.00",
"taxes": {
"categories": [
{
"code": "VAT",
"rates": [
{
"key": "standard",
"base": "1800.00",
"percent": "22.0%",
"amount": "396.00"
}
],
"amount": "396.00"
}
],
"sum": "396.00"
},
"tax": "396.00",
"total_with_tax": "2196.00",
"payable": "2196.00"
}
}
FAQ
Yes, electronic invoicing through SDI is mandatory in Italy for B2G, B2B and B2C transactions.
All invoices must be issued in FatturaPA format and transmitted through the SDI (Sistema di Interscambio) platform.
There are two main ways to correct an invoice in the Italian SDI system:
- Issue a credit note (Nota di Credito - TD04) to fully or partially cancel the original invoice.
- Issue a debit note (Nota di Debito - TD05) to integrate/correct the original invoice with additional charges.
The corrective document must reference the original invoice number and date.