Facturation électronique facile, rapide et avec des normes de sécurité élevées
Automatise l'envoi, la signature, la réception et le stockage numérique des factures électroniques via l'API
Toutes les connaissances dont vous avez besoin
Vous trouverez ici quelques conseils à prendre en compte pour aborder cette API. Si vous préférez, nous fournissons des exemples de code, la documentation OAS3, la possibilité d'essayer l'API en direct via Swagger UI ou d'importer l'intégralité de la collection dans Postman. Nous proposons également un environnement Sandbox où vous pouvez expérimenter toutes sortes de requêtes de manière totalement gratuite.
Obtenir le Token dans la section appropriée avant de commencer.
Configurer l'entreprise
Configurer les notifications pour gérer les approbations et les rejets
Cette opération doit être effectuée uniquement lorsque vous configurez l'entreprise pour la première fois.
Si vous êtes intéressé par le cycle passif, suivez d'abord ce guide : https://openapi.it/en/blog/register-recipient-code-italian-revenue-agency.html
Envoyer la première facture
Une fois la facture envoyée, la notification sera reçue à l'URL indiquée dans la configuration des notifications.
La réponse à un envoi de facture contiendra un uuid qui pourra être utilisé ultérieurement pour récupérer la facture /invoices, les notifications éventuelles /invoices_notifications ou télécharger la facture /invoices_download.
- Oas file url https://console.openapi.com/oas/fr/sdi.openapi.json
- Fork or import with Postman
- Production domain sdi.openapi.it
- Sandbox domain test.sdi.openapi.it
-
Production Scopes 21
- GET sdi.openapi.it/invoices
- POST sdi.openapi.it/invoices
- GET sdi.openapi.it/invoices_download
- DELETE sdi.openapi.it/business_registries
- POST sdi.openapi.it/business_registry_configurations
- POST sdi.openapi.it/api_configurations
- DELETE sdi.openapi.it/api_configurations
- GET sdi.openapi.it/api_configurations
- DELETE sdi.openapi.it/business_registry_configurations
- GET sdi.openapi.it/business_registry_configurations
- GET sdi.openapi.it/invoices_notifications
- POST sdi.openapi.it/supplier_invoice_imports
- POST sdi.openapi.it/customer_invoice_imports
- GET sdi.openapi.it/invoices_stats
- PATCH sdi.openapi.it/business_registry_configurations
- POST sdi.openapi.it/invoices_signature
- POST sdi.openapi.it/invoices_legal_storage
- POST sdi.openapi.it/invoices_signature_legal_storage
- POST sdi.openapi.it/supplier_invoice_imports_legal_storage
- POST sdi.openapi.it/customer_invoice_imports_legal_storage
- POST sdi.openapi.it/simulate-supplier-invoice
-
Sandbox Scopes 20
- GET test.sdi.openapi.it/invoices
- POST test.sdi.openapi.it/invoices
- GET test.sdi.openapi.it/invoices_download
- POST test.sdi.openapi.it/business_registry_configurations
- POST test.sdi.openapi.it/api_configurations
- DELETE test.sdi.openapi.it/api_configurations
- GET test.sdi.openapi.it/api_configurations
- DELETE test.sdi.openapi.it/business_registry_configurations
- GET test.sdi.openapi.it/business_registry_configurations
- GET test.sdi.openapi.it/invoices_notifications
- POST test.sdi.openapi.it/supplier_invoice_imports
- POST test.sdi.openapi.it/customer_invoice_imports
- GET test.sdi.openapi.it/invoices_stats
- PATCH test.sdi.openapi.it/business_registry_configurations
- POST test.sdi.openapi.it/invoices_signature
- POST test.sdi.openapi.it/invoices_legal_storage
- POST test.sdi.openapi.it/invoices_signature_legal_storage
- POST test.sdi.openapi.it/supplier_invoice_imports_legal_storage
- POST test.sdi.openapi.it/customer_invoice_imports_legal_storage
- POST test.sdi.openapi.it/simulate
SDI (1.0.0)
Ce service vous permet de gérer les interactions avec le SDI (Sistema Di Interscambio) italien
Vous pouvez configurer votre compte de manière à ce que les factures soient envoyées directement au stockage légal en définissant la configuration de l'api en fonction de vos besoins
Pour pouvoir opérer, vous devez enregistrer notre Code de bénéficiaire sur le site web de l'Agence italienne du revenu. Veuillez suivre ce [guide étape par étape] (https://openapi.it/en/blog/register-recipient-code-italian-revenue-agency.html) et fournir le code suivant si nécessaire : JKKZDGR
Créez une BusinessRegistryConfiguration avec POST /business_registry_configurations pour votre fiscal_id et votre email
Un courrier sera envoyé à votre adresse pour activer le compte sur la plateforme de stockage légal, si nécessaire.
Créez une ApiConfiguration pour votre BusinessRegistryConfiguration avec POST /api_configurations. Ce point de terminaison peut être configuré pour recevoir toutes les notifications avec un rappel.
Créez une facture XML sur le point de terminaison relatif à votre configuration
Pour voir un exemple des objets de rappel, veuillez consulter l'onglet Callbacks dans la requête /api_configurations
Veuillez noter que dans la traduction anglaise :
Customer invoices : Fatture attive
Factures fournisseurs : Fatture passive
Stockage légal : Certificazione a norma
Le stockage légal est le service qui permet la conservation légale de vos documents. Tous les documents stockés sont disponibles dans le logiciel de gestion du stockage légal, un logiciel tiers.
Lors de la création d'une BusinessRegistryConfiguration, il vous sera demandé de fournir une adresse e-mail qui sera enregistrée sur la plateforme. Vous recevrez un courriel contenant toutes les étapes pour compléter l'enregistrement et accéder à la plateforme.
Si vous recevez un rappel mais que vous n'avez plus de crédit sur votre porte-monnaie, votre compte sera temporairement suspendu : dans ce cas, un courriel de rappel vous sera immédiatement envoyé. Afin de le réactiver après une recharge du portefeuille, vous devrez soumettre une requête PATCH à /business_registry_configurations/{fiscal_id}/activate
Les factures adressées à l'administration publique sont automatiquement détectées et signées.
Créer une ApiConfiguration pour un fiscal_id
Créez les configurations de vos points d'extrémité de rappel.
Toutes les notifications reçues par SDI seront envoyées à vos points de terminaison configurés.
Le "fiscal_id" est l'identifiant unique de l'entreprise que vous souhaitez configurer.
Vous pouvez créer des points de terminaison distincts pour chaque événement : le code de l'événement peut être l'un des suivants : "supplier-invoice", "customer-invoice", "customer-notification", "legal-storage-missing-vat", "legal-storage-receipt"
Authorizations:
Request Body schema: application/json
fiscal_id | string |
Array of objects |
Responses
Response Schema: application/json
Array of objects (ApiConfiguration-read) La liste des ApiConfiguration créées pour ce fiscal_id | |
message | string |
success | boolean |
error | string <nullable> |
Callbacks
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "fiscal_id": "000133445566",
- "callbacks": [
- {
- "event": "supplier-invoice",
- "auth_header": "Bearer 123456789",
- "field": "data"
Response samples
- 200
- "data": [
- {
- "id": "000133445566",
- "callbacks": [
- {
- "event": "supplier-invoice",
- "auth_header": "Bearer 123456789",
- "field": "data"
- "message": "string",
- "success": true,
- "error": "string"
Callback payload samples
- "event": "customer-invoice",
- "data": {
- "invoice": {
- "uuid": "9b8dddbd-7900-48c6-b159-0f60cc9b413c",
- "created_at": "2022-09-13T10:39:14+00:00",
- "filename": "IT10442360961_06XA6.xml",
- "file_id": 1084646898320,
- "payload": {
- "fattura_elettronica_header": {
- "dati_trasmissione": {
- "id_trasmittente": {
- "id_paese": "IT",
- "id_codice": "10442360961"
- "progressivo_invio": "06V27",
- "formato_trasmissione": "FPR12",
- "codice_destinatario": "123123123",
- "contatti_trasmittente": null,
- "pec_destinatario": null
- "cedente_prestatore": {
- "dati_anagrafici": {
- "id_fiscale_iva": {
- "id_paese": "IT",
- "id_codice": "prova_1663065381275"
- "codice_fiscale": null,
- "anagrafica": {
- "denominazione": "John Doe",
- "nome": null,
- "cognome": null,
- "titolo": null,
- "cod_eori": null
- "albo_professionale": null,
- "provincia_albo": null,
- "numero_iscrizione_albo": null,
- "data_iscrizione_albo": null,
- "regime_fiscale": "RF01"
- "sede": {
- "indirizzo": "Via di Qua, 1",
- "numero_civico": null,
- "cap": "20145",
- "comune": "Milano",
- "provincia": "MI",
- "nazione": "IT"
- "stabile_organizzazione": null,
- "iscrizione_rea": null,
- "contatti": null,
- "riferimento_amministrazione": null
- "rappresentante_fiscale": null,
- "cessionario_committente": {
- "dati_anagrafici": {
- "id_fiscale_iva": {
- "id_paese": "IT",
- "id_codice": "09876543211"
- "codice_fiscale": null,
- "anagrafica": {
- "denominazione": "Jane Doe",
- "nome": null,
- "cognome": null,
- "titolo": null,
- "cod_eori": null
- "sede": {
- "indirizzo": "Via di La, 2",
- "numero_civico": null,
- "cap": "20145",
- "comune": "Milano",
- "provincia": "MI",
- "nazione": "IT"
- "stabile_organizzazione": null,
- "rappresentante_fiscale": null
- "terzo_intermediario_o_soggetto_emittente": null,
- "soggetto_emittente": null
- "fattura_elettronica_body": [
- {
- "dati_generali": {
- "dati_generali_documento": {
- "tipo_documento": "TD01",
- "divisa": "EUR",
- "data": "2018-07-10",
- "numero": "1",
- "dati_ritenuta": null,
- "dati_bollo": null,
- "dati_cassa_previdenziale": null,
- "sconto_maggiorazione": null,
- "importo_totale_documento": null,
- "arrotondamento": null,
- "causale": null,
- "art73": null
- "dati_ordine_acquisto": null,
- "dati_contratto": null,
- "dati_convenzione": null,
- "dati_ricezione": null,
- "dati_fatture_collegate": null,
- "dati_sal": null,
- "dati_ddt": null,
- "dati_trasporto": null,
- "fattura_principale": null
- "dati_beni_servizi": {
- "dettaglio_linee": [
- {
- "numero_linea": 1,
- "tipo_cessione_prestazione": null,
- "codice_articolo": null,
- "descrizione": "Descrizione articolo",
- "quantita": null,
- "unita_misura": null,
- "data_inizio_periodo": null,
- "data_fine_periodo": null,
- "prezzo_unitario": "10.00",
- "sconto_maggiorazione": null,
- "prezzo_totale": "10.00",
- "aliquota_iva": "22.00",
- "ritenuta": null,
- "natura": null,
- "riferimento_amministrazione": null,
- "altri_dati_gestionali": null
- "dati_riepilogo": [
- {
- "aliquota_iva": "22.00",
- "natura": null,
- "spese_accessorie": null,
- "arrotondamento": null,
- "imponibile_importo": "10.00",
- "imposta": "2.20",
- "esigibilita_iva": null,
- "riferimento_normativo": null
- "dati_veicoli": null,
- "dati_pagamento": null,
- "allegati": null
Récupérer une liste d'ApiConfigurations
Authorizations:
query Parameters
fiscal_id | string Filtres pour un identifiant fiscal |
Responses
Response Schema: application/json
Array of objects (ApiConfiguration-read) | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/api_configurations?fiscal_id=SOME_STRING_VALUE"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": [
- {
- "id": "000133445566",
- "callbacks": [
- {
- "event": "supplier-invoice",
- "auth_header": "Bearer 123456789",
- "field": "data"
- "message": "string",
- "success": true,
- "error": "string"
Suppression des ApiConfigurations
Authorizations:
path Parameters
id required | string L'identifiant de l'ApiConfiguration |
Responses
Response Schema: application/json
data | string |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "DELETE"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/api_configurations/%7Bid%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": null,
- "message": "Deleted",
- "success": true,
- "error": "string"
Les factures standard et simplifiées sont prises en charge, qu'elles soient destinées à des entités privées ou à l'administration publique
Créer une facture
Créez une nouvelle facture et envoyez-la au canal gouvernemental. Vous devez expliciter le format du corps de la demande en utilisant l'en-tête content-type. Votre facture sera mise en file d'attente instantanément et vous recevrez l'UUID de la facture en rappel
Authorizations:
Request Body schema: application/xml
required | object (FatturaPAFatturaElettronicaHeader-read) |
required | Array of objects (FatturaPAFatturaElettronicaBody-read) |
Responses
Response Schema: application/json
object | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
<?xml version="1.0" encoding="UTF-8"?> <p:FatturaElettronica versione="FPR12" > <FatturaElettronicaHeader> <DatiTrasmissione> <IdTrasmittente> <IdPaese>IT</IdPaese> <IdCodice>10442360961</IdCodice> </IdTrasmittente> <ProgressivoInvio>06V27</ProgressivoInvio> <FormatoTrasmissione>FPR12</FormatoTrasmissione> <CodiceDestinatario>Codice destinatario</CodiceDestinatario> </DatiTrasmissione> <CedentePrestatore> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>Codice destinatario</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>John Doe</Denominazione> </Anagrafica> <RegimeFiscale>RF01</RegimeFiscale> </DatiAnagrafici> <Sede> <Indirizzo>Via di Qua, 1</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CedentePrestatore> <CessionarioCommittente> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>09876543211</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>Jane Doe</Denominazione> </Anagrafica> </DatiAnagrafici> <Sede> <Indirizzo>Via di La, 2</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CessionarioCommittente> </FatturaElettronicaHeader> <FatturaElettronicaBody> <DatiGenerali> <DatiGeneraliDocumento> <TipoDocumento>TD01</TipoDocumento> <Divisa>EUR</Divisa> <Data>2018-07-10</Data> <Numero>1</Numero> </DatiGeneraliDocumento> </DatiGenerali> <DatiBeniServizi> <DettaglioLinee> <NumeroLinea>1</NumeroLinea> <Descrizione>Descrizione articolo</Descrizione> <PrezzoUnitario>10.00</PrezzoUnitario> <PrezzoTotale>10.00</PrezzoTotale> <AliquotaIVA>22.00</AliquotaIVA> </DettaglioLinee> <DatiRiepilogo> <AliquotaIVA>22.00</AliquotaIVA> <ImponibileImporto>10.00</ImponibileImporto> <Imposta>2.20</Imposta> </DatiRiepilogo> </DatiBeniServizi> </FatturaElettronicaBody> </p:FatturaElettronica>
Response samples
- 200
- "data": {
- "uuid": "string"
- "message": "",
- "success": true,
- "error": "string"
Créer une facture en appliquant la signature
Créez une nouvelle facture et envoyez-la au canal gouvernemental. Vous devez expliciter le format du corps de la demande en utilisant l'en-tête content-type. Votre facture sera mise en file d'attente instantanément et vous recevrez l'UUID de la facture en rappel
Authorizations:
Request Body schema: application/xml
required | object (FatturaPAFatturaElettronicaHeader-read) |
required | Array of objects (FatturaPAFatturaElettronicaBody-read) |
Responses
Response Schema: application/json
object | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
<?xml version="1.0" encoding="UTF-8"?> <p:FatturaElettronica versione="FPR12" > <FatturaElettronicaHeader> <DatiTrasmissione> <IdTrasmittente> <IdPaese>IT</IdPaese> <IdCodice>10442360961</IdCodice> </IdTrasmittente> <ProgressivoInvio>06V27</ProgressivoInvio> <FormatoTrasmissione>FPR12</FormatoTrasmissione> <CodiceDestinatario>Codice destinatario</CodiceDestinatario> </DatiTrasmissione> <CedentePrestatore> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>Codice destinatario</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>John Doe</Denominazione> </Anagrafica> <RegimeFiscale>RF01</RegimeFiscale> </DatiAnagrafici> <Sede> <Indirizzo>Via di Qua, 1</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CedentePrestatore> <CessionarioCommittente> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>09876543211</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>Jane Doe</Denominazione> </Anagrafica> </DatiAnagrafici> <Sede> <Indirizzo>Via di La, 2</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CessionarioCommittente> </FatturaElettronicaHeader> <FatturaElettronicaBody> <DatiGenerali> <DatiGeneraliDocumento> <TipoDocumento>TD01</TipoDocumento> <Divisa>EUR</Divisa> <Data>2018-07-10</Data> <Numero>1</Numero> </DatiGeneraliDocumento> </DatiGenerali> <DatiBeniServizi> <DettaglioLinee> <NumeroLinea>1</NumeroLinea> <Descrizione>Descrizione articolo</Descrizione> <PrezzoUnitario>10.00</PrezzoUnitario> <PrezzoTotale>10.00</PrezzoTotale> <AliquotaIVA>22.00</AliquotaIVA> </DettaglioLinee> <DatiRiepilogo> <AliquotaIVA>22.00</AliquotaIVA> <ImponibileImporto>10.00</ImponibileImporto> <Imposta>2.20</Imposta> </DatiRiepilogo> </DatiBeniServizi> </FatturaElettronicaBody> </p:FatturaElettronica>
Response samples
- 200
- "data": {
- "uuid": "string"
- "message": "",
- "success": true,
- "error": "string"
Créer une facture pour le stockage légal
Créez une nouvelle facture et envoyez-la au canal gouvernemental. Vous devez expliciter le format du corps de la demande en utilisant l'en-tête content-type. Votre facture sera mise en file d'attente instantanément et vous recevrez l'UUID de la facture en rappel
Authorizations:
Request Body schema: application/xml
required | object (FatturaPAFatturaElettronicaHeader-read) |
required | Array of objects (FatturaPAFatturaElettronicaBody-read) |
Responses
Response Schema: application/json
object | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
<?xml version="1.0" encoding="UTF-8"?> <p:FatturaElettronica versione="FPR12" > <FatturaElettronicaHeader> <DatiTrasmissione> <IdTrasmittente> <IdPaese>IT</IdPaese> <IdCodice>10442360961</IdCodice> </IdTrasmittente> <ProgressivoInvio>06V27</ProgressivoInvio> <FormatoTrasmissione>FPR12</FormatoTrasmissione> <CodiceDestinatario>Codice destinatario</CodiceDestinatario> </DatiTrasmissione> <CedentePrestatore> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>Codice destinatario</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>John Doe</Denominazione> </Anagrafica> <RegimeFiscale>RF01</RegimeFiscale> </DatiAnagrafici> <Sede> <Indirizzo>Via di Qua, 1</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CedentePrestatore> <CessionarioCommittente> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>09876543211</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>Jane Doe</Denominazione> </Anagrafica> </DatiAnagrafici> <Sede> <Indirizzo>Via di La, 2</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CessionarioCommittente> </FatturaElettronicaHeader> <FatturaElettronicaBody> <DatiGenerali> <DatiGeneraliDocumento> <TipoDocumento>TD01</TipoDocumento> <Divisa>EUR</Divisa> <Data>2018-07-10</Data> <Numero>1</Numero> </DatiGeneraliDocumento> </DatiGenerali> <DatiBeniServizi> <DettaglioLinee> <NumeroLinea>1</NumeroLinea> <Descrizione>Descrizione articolo</Descrizione> <PrezzoUnitario>10.00</PrezzoUnitario> <PrezzoTotale>10.00</PrezzoTotale> <AliquotaIVA>22.00</AliquotaIVA> </DettaglioLinee> <DatiRiepilogo> <AliquotaIVA>22.00</AliquotaIVA> <ImponibileImporto>10.00</ImponibileImporto> <Imposta>2.20</Imposta> </DatiRiepilogo> </DatiBeniServizi> </FatturaElettronicaBody> </p:FatturaElettronica>
Response samples
- 200
- "data": {
- "uuid": "string"
- "message": "",
- "success": true,
- "error": "string"
Créer une facture en appliquant la signature et le stockage légal
Créez une nouvelle facture et envoyez-la au canal gouvernemental. Vous devez expliciter le format du corps de la demande en utilisant l'en-tête content-type. Votre facture sera mise en file d'attente instantanément et vous recevrez l'UUID de la facture en rappel
Authorizations:
Request Body schema: application/xml
required | object (FatturaPAFatturaElettronicaHeader-read) |
required | Array of objects (FatturaPAFatturaElettronicaBody-read) |
Responses
Response Schema: application/json
object | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
<?xml version="1.0" encoding="UTF-8"?> <p:FatturaElettronica versione="FPR12" > <FatturaElettronicaHeader> <DatiTrasmissione> <IdTrasmittente> <IdPaese>IT</IdPaese> <IdCodice>10442360961</IdCodice> </IdTrasmittente> <ProgressivoInvio>06V27</ProgressivoInvio> <FormatoTrasmissione>FPR12</FormatoTrasmissione> <CodiceDestinatario>Codice destinatario</CodiceDestinatario> </DatiTrasmissione> <CedentePrestatore> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>Codice destinatario</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>John Doe</Denominazione> </Anagrafica> <RegimeFiscale>RF01</RegimeFiscale> </DatiAnagrafici> <Sede> <Indirizzo>Via di Qua, 1</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CedentePrestatore> <CessionarioCommittente> <DatiAnagrafici> <IdFiscaleIVA> <IdPaese>IT</IdPaese> <IdCodice>09876543211</IdCodice> </IdFiscaleIVA> <Anagrafica> <Denominazione>Jane Doe</Denominazione> </Anagrafica> </DatiAnagrafici> <Sede> <Indirizzo>Via di La, 2</Indirizzo> <CAP>20145</CAP> <Comune>Milano</Comune> <Provincia>MI</Provincia> <Nazione>IT</Nazione> </Sede> </CessionarioCommittente> </FatturaElettronicaHeader> <FatturaElettronicaBody> <DatiGenerali> <DatiGeneraliDocumento> <TipoDocumento>TD01</TipoDocumento> <Divisa>EUR</Divisa> <Data>2018-07-10</Data> <Numero>1</Numero> </DatiGeneraliDocumento> </DatiGenerali> <DatiBeniServizi> <DettaglioLinee> <NumeroLinea>1</NumeroLinea> <Descrizione>Descrizione articolo</Descrizione> <PrezzoUnitario>10.00</PrezzoUnitario> <PrezzoTotale>10.00</PrezzoTotale> <AliquotaIVA>22.00</AliquotaIVA> </DettaglioLinee> <DatiRiepilogo> <AliquotaIVA>22.00</AliquotaIVA> <ImponibileImporto>10.00</ImponibileImporto> <Imposta>2.20</Imposta> </DatiRiepilogo> </DatiBeniServizi> </FatturaElettronicaBody> </p:FatturaElettronica>
Response samples
- 200
- "data": {
- "uuid": "string"
- "message": "",
- "success": true,
- "error": "string"
Récupérer la collection de ressources Facture.
Ce point d'accès permet de récupérer des informations sur les factures. Différents paramètres de requête peuvent être spécifiés pour filtrer les résultats en fonction des besoins de l'utilisateur.
Paramètres de la requête :
- type (facultatif) : Le type de recherche à effectuer. Valeurs autorisées : 0 ou 1. Si 0, les factures dont l'utilisateur est l'expéditeur sont retournées. Si la valeur est 1, les factures dont l'utilisateur est le destinataire sont retournées. Si elle n'est pas spécifiée, la valeur par défaut est 0.
- expéditeur (facultatif) : Indique l'expéditeur des factures. Il peut s'agir d'un seul expéditeur ou d'une liste d'expéditeurs séparés par des virgules.
- destinataire (optionnel) : Indique le destinataire des factures. Il peut s'agir d'un seul destinataire ou d'une liste de destinataires séparés par des virgules.
Exemple : Récupérer toutes les factures de l'utilisateur :
GET /invoices?type=1 GET /invoices?type=1&recipient=987654321,123456789 GET /invoices?type=0&sender=123456789,987654321
Note : Si type n'est pas spécifié, il n'y a pas d'erreur : Si type n'est pas spécifié, la valeur par défaut est 0, et toutes les factures de l'utilisateur de type 0 sont renvoyées.
Authorizations:
query Parameters
createdAt[before] | string |
createdAt[strictly_before] | string |
createdAt[after] | string |
createdAt[strictly_after] | string |
signed | boolean |
downloaded | boolean |
toPa | string Rechercher les factures qui ont été envoyées à PA. |
type | string Lorsque le type est 0, la recherche porte sur les factures envoyées à un client, lorsque le type est 1, la recherche porte sur les factures reçues par un fournisseur |
sender | string Recherche par expéditeur (numéro de TVA OU code fiscal). Vous pouvez spécifier plusieurs valeurs à la fois en les séparant par des virgules. |
recipient | string Recherche par destinataire (numéro de TVA OU code fiscal). Vous pouvez spécifier plusieurs valeurs à la fois en les séparant par des virgules. |
invoiceDate[before] | string |
invoiceDate[strictly_before] | string |
invoiceDate[after] | string |
invoiceDate[strictly_after] | string |
invoiceNumber | string |
recipient.businessName | string |
recipient.businessVatNumberCode | string |
recipient.businessVatNumberCode[] | Array of strings |
recipient.businessFiscalCode | string |
recipient.businessFiscalCode[] | Array of strings |
sender.businessName | string |
sender.businessVatNumberCode | string |
sender.businessVatNumberCode[] | Array of strings |
sender.businessFiscalCode | string |
sender.businessFiscalCode[] | Array of strings |
marking | string |
marking[] | Array of strings |
page | integer Le numéro de page de la collection |
Responses
Response Schema: application/json
created_at | string <date-time> |
uuid | string |
type | integer |
payload | string |
object (BusinessRegistry-read) | |
object (BusinessRegistry-read) | |
notifications | Array of strings |
sdi_file_name | string |
sdi_file_id | string |
signed | boolean |
legally_stored | boolean |
object (PreservedDocument-read) | |
downloaded | boolean La facture a été téléchargée (automatiquement lorsqu'elle est reçue par un webhook ou manuellement pour les intégrations par sondage). |
downloaded_at | string <date-time> |
marking | string Le marquage représente le statut actuel de la facture. |
notice | string |
retry_information | string |
transmission_format | string Format de transmission spécifié dans la facture. |
to_pa | boolean |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/invoices?createdAt%5Bbefore%5D=SOME_STRING_VALUE&createdAt%5Bstrictly_before%5D=SOME_STRING_VALUE&createdAt%5Bafter%5D=SOME_STRING_VALUE&createdAt%5Bstrictly_after%5D=SOME_STRING_VALUE&signed=SOME_BOOLEAN_VALUE&downloaded=SOME_BOOLEAN_VALUE&toPa=SOME_STRING_VALUE&type=SOME_STRING_VALUE&sender=SOME_STRING_VALUE&recipient=SOME_STRING_VALUE&invoiceDate%5Bbefore%5D=SOME_STRING_VALUE&invoiceDate%5Bstrictly_before%5D=SOME_STRING_VALUE&invoiceDate%5Bafter%5D=SOME_STRING_VALUE&invoiceDate%5Bstrictly_after%5D=SOME_STRING_VALUE&invoiceNumber=SOME_STRING_VALUE&recipient.businessName=SOME_STRING_VALUE&recipient.businessVatNumberCode=SOME_STRING_VALUE&recipient.businessVatNumberCode%5B%5D=SOME_ARRAY_VALUE&recipient.businessFiscalCode=SOME_STRING_VALUE&recipient.businessFiscalCode%5B%5D=SOME_ARRAY_VALUE&sender.businessName=SOME_STRING_VALUE&sender.businessVatNumberCode=SOME_STRING_VALUE&sender.businessVatNumberCode%5B%5D=SOME_ARRAY_VALUE&sender.businessFiscalCode=SOME_STRING_VALUE&sender.businessFiscalCode%5B%5D=SOME_ARRAY_VALUE&marking=SOME_STRING_VALUE&marking%5B%5D=SOME_ARRAY_VALUE&page=SOME_INTEGER_VALUE"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- {
- "created_at": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "type": 0,
- "payload": "string",
- "sender": {
- "uuid": "string",
- "head_office_address_street": "string",
- "head_office_address_street_number": "string",
- "head_office_address_zip_code": "string",
- "head_office_address_city": "string",
- "head_office_address_province": "string",
- "head_office_address_country": "string",
- "office_address_street": "string",
- "office_address_street_number": "string",
- "office_address_zip_code": "string",
- "office_address_city": "string",
- "office_address_province": "string",
- "office_address_country": "string",
- "business_vat_number_country": "string",
- "business_vat_number_code": "string",
- "business_fiscal_code": "string",
- "business_name": "string",
- "name": "string",
- "surname": "string",
- "title": "string",
- "cod_eori": "string",
- "professional_register": "string",
- "professional_register_province": "string",
- "professional_register_registration_number": "string",
- "professional_register_registration_date": "2019-08-24T14:15:22Z",
- "tax_regime": "string",
- "contact_phone": "string",
- "contact_fax": "string",
- "contact_email": "string",
- "rea_registration_office": "string",
- "rea_registration_number": "string",
- "rea_registration_share_capital": "string",
- "rea_registration_sole_shareholder": "string",
- "rea_registration_liquidation_status": "string",
- "reference_administration": "string",
- "fiscal_representative_vat_number_country": "string",
- "fiscal_representative_vat_number_code": "string",
- "fiscal_representative_fiscal_code": "string",
- "fiscal_representative_denomination": "string",
- "fiscal_representative_name": "string",
- "fiscal_representative_surname": "string",
- "fiscal_representative_title": "string",
- "fiscal_representative_cod_eori": "string"
- "recipient": {
- "uuid": "string",
- "head_office_address_street": "string",
- "head_office_address_street_number": "string",
- "head_office_address_zip_code": "string",
- "head_office_address_city": "string",
- "head_office_address_province": "string",
- "head_office_address_country": "string",
- "office_address_street": "string",
- "office_address_street_number": "string",
- "office_address_zip_code": "string",
- "office_address_city": "string",
- "office_address_province": "string",
- "office_address_country": "string",
- "business_vat_number_country": "string",
- "business_vat_number_code": "string",
- "business_fiscal_code": "string",
- "business_name": "string",
- "name": "string",
- "surname": "string",
- "title": "string",
- "cod_eori": "string",
- "professional_register": "string",
- "professional_register_province": "string",
- "professional_register_registration_number": "string",
- "professional_register_registration_date": "2019-08-24T14:15:22Z",
- "tax_regime": "string",
- "contact_phone": "string",
- "contact_fax": "string",
- "contact_email": "string",
- "rea_registration_office": "string",
- "rea_registration_number": "string",
- "rea_registration_share_capital": "string",
- "rea_registration_sole_shareholder": "string",
- "rea_registration_liquidation_status": "string",
- "reference_administration": "string",
- "fiscal_representative_vat_number_country": "string",
- "fiscal_representative_vat_number_code": "string",
- "fiscal_representative_fiscal_code": "string",
- "fiscal_representative_denomination": "string",
- "fiscal_representative_name": "string",
- "fiscal_representative_surname": "string",
- "fiscal_representative_title": "string",
- "fiscal_representative_cod_eori": "string"
- "notifications": [
- "string"
- "sdi_file_name": "string",
- "sdi_file_id": "string",
- "signed": true,
- "legally_stored": true,
- "preserved_document": {
- "created_at": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "status": "string",
- "receipt_received_at": "2019-08-24T14:15:22Z",
- "object_type": "string",
- "object_id": "string",
- "message": "string",
- "preserved_object_id": "string",
- "weight": 0
- "downloaded": true,
- "downloaded_at": "2019-08-24T14:15:22Z",
- "marking": "string",
- "notice": "string",
- "retry_information": "string",
- "transmission_format": "string",
- "to_pa": true
Récupérer la ressource Facture.
Obtenir une facture en application/json par défaut
Authorizations:
path Parameters
uuid required | string |
Responses
Response Schema: application/json
created_at | string <date-time> |
uuid | string |
type | integer |
payload | string |
object (BusinessRegistry-read) | |
object (BusinessRegistry-read) | |
notifications | Array of strings |
sdi_file_name | string |
sdi_file_id | string |
signed | boolean |
legally_stored | boolean |
object (PreservedDocument-read) | |
downloaded | boolean La facture a été téléchargée (automatiquement lorsqu'elle est reçue par un webhook ou manuellement pour les intégrations par sondage). |
downloaded_at | string <date-time> |
marking | string Le marquage représente le statut actuel de la facture. |
notice | string |
retry_information | string |
transmission_format | string Format de transmission spécifié dans la facture. |
to_pa | boolean |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/invoices/%7Buuid%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "created_at": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "type": 0,
- "payload": "string",
- "sender": {
- "uuid": "string",
- "head_office_address_street": "string",
- "head_office_address_street_number": "string",
- "head_office_address_zip_code": "string",
- "head_office_address_city": "string",
- "head_office_address_province": "string",
- "head_office_address_country": "string",
- "office_address_street": "string",
- "office_address_street_number": "string",
- "office_address_zip_code": "string",
- "office_address_city": "string",
- "office_address_province": "string",
- "office_address_country": "string",
- "business_vat_number_country": "string",
- "business_vat_number_code": "string",
- "business_fiscal_code": "string",
- "business_name": "string",
- "name": "string",
- "surname": "string",
- "title": "string",
- "cod_eori": "string",
- "professional_register": "string",
- "professional_register_province": "string",
- "professional_register_registration_number": "string",
- "professional_register_registration_date": "2019-08-24T14:15:22Z",
- "tax_regime": "string",
- "contact_phone": "string",
- "contact_fax": "string",
- "contact_email": "string",
- "rea_registration_office": "string",
- "rea_registration_number": "string",
- "rea_registration_share_capital": "string",
- "rea_registration_sole_shareholder": "string",
- "rea_registration_liquidation_status": "string",
- "reference_administration": "string",
- "fiscal_representative_vat_number_country": "string",
- "fiscal_representative_vat_number_code": "string",
- "fiscal_representative_fiscal_code": "string",
- "fiscal_representative_denomination": "string",
- "fiscal_representative_name": "string",
- "fiscal_representative_surname": "string",
- "fiscal_representative_title": "string",
- "fiscal_representative_cod_eori": "string"
- "recipient": {
- "uuid": "string",
- "head_office_address_street": "string",
- "head_office_address_street_number": "string",
- "head_office_address_zip_code": "string",
- "head_office_address_city": "string",
- "head_office_address_province": "string",
- "head_office_address_country": "string",
- "office_address_street": "string",
- "office_address_street_number": "string",
- "office_address_zip_code": "string",
- "office_address_city": "string",
- "office_address_province": "string",
- "office_address_country": "string",
- "business_vat_number_country": "string",
- "business_vat_number_code": "string",
- "business_fiscal_code": "string",
- "business_name": "string",
- "name": "string",
- "surname": "string",
- "title": "string",
- "cod_eori": "string",
- "professional_register": "string",
- "professional_register_province": "string",
- "professional_register_registration_number": "string",
- "professional_register_registration_date": "2019-08-24T14:15:22Z",
- "tax_regime": "string",
- "contact_phone": "string",
- "contact_fax": "string",
- "contact_email": "string",
- "rea_registration_office": "string",
- "rea_registration_number": "string",
- "rea_registration_share_capital": "string",
- "rea_registration_sole_shareholder": "string",
- "rea_registration_liquidation_status": "string",
- "reference_administration": "string",
- "fiscal_representative_vat_number_country": "string",
- "fiscal_representative_vat_number_code": "string",
- "fiscal_representative_fiscal_code": "string",
- "fiscal_representative_denomination": "string",
- "fiscal_representative_name": "string",
- "fiscal_representative_surname": "string",
- "fiscal_representative_title": "string",
- "fiscal_representative_cod_eori": "string"
- "notifications": [
- "string"
- "sdi_file_name": "string",
- "sdi_file_id": "string",
- "signed": true,
- "legally_stored": true,
- "preserved_document": {
- "created_at": "2019-08-24T14:15:22Z",
- "uuid": "string",
- "status": "string",
- "receipt_received_at": "2019-08-24T14:15:22Z",
- "object_type": "string",
- "object_id": "string",
- "message": "string",
- "preserved_object_id": "string",
- "weight": 0
- "downloaded": true,
- "downloaded_at": "2019-08-24T14:15:22Z",
- "marking": "string",
- "notice": "string",
- "retry_information": "string",
- "transmission_format": "string",
- "to_pa": true
Télécharger une facture.
Vous pouvez obtenir une facture dans de nombreux formats différents en spécifiant simplement un en-tête Accept différent :
- application/xml, vous obtenez le format XML
- text/html, vous obtenez la facture formatée avec la feuille de style choisie (via l'en-tête X-PrintTheme, voir ci-dessous)
- application/pdf, même chose que HTML mais sous forme de fichier PDF
- application/octet-stream, vous obtenez le fichier brut (format P7M ou XML)
Authorizations:
path Parameters
uuid required | string |
Responses
Response Schema:
created_at | string <date-time> |
uuid | string |
type | integer |
payload | string |
object (BusinessRegistry-read) | |
object (BusinessRegistry-read) | |
notifications | Array of strings |
sdi_file_name | string |
sdi_file_id | string |
signed | boolean |
legally_stored | boolean |
object (PreservedDocument-read) | |
downloaded | boolean La facture a été téléchargée (automatiquement lorsqu'elle est reçue par un webhook ou manuellement pour les intégrations par sondage). |
downloaded_at | string <date-time> |
marking | string Le marquage représente le statut actuel de la facture. |
notice | string |
retry_information | string |
transmission_format | string Format de transmission spécifié dans la facture. |
to_pa | boolean |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/invoices_download/%7Buuid%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Récupérer la collection de notifications de factures.
Récupère la collection de notifications pour une facture donnée. Vous pouvez obtenir le message de notification au format JSON ou au format XML original en envoyant l'en-tête HTTP Accept à application/json ou application/xml
Authorizations:
path Parameters
uuid required | string |
Responses
Response Schema:
uuid | string |
invoice_uuid | string |
created_at | string La date de réception de la notification. |
type | string Le type de notification (code de 2 lettres). |
message | string Le modèle de message de notification. |
downloaded | boolean La notification a été téléchargée (automatiquement lorsqu'elle est reçue par un webhook ou manuellement pour les intégrations par sondage). |
downloaded_at | string <date-time> Date de téléchargement de la notification. |
file_name | string |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/invoices_notifications/%7Buuid%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- {
- "uuid": "string",
- "invoice_uuid": "string",
- "created_at": "string",
- "type": "string",
- "message": "string",
- "downloaded": true,
- "downloaded_at": "2019-08-24T14:15:22Z",
- "file_name": "string"
Créer une configuration de registre d'entreprise
Authorizations:
Request Body schema: application/json
fiscal_id | string Le code fiscal ou le numéro de TVA SANS le préfixe du pays |
name | string Le nom du propriétaire de l'identifiant fiscal. |
string L'adresse électronique à laquelle le propriétaire de l'identifiant fiscal recevra les communications de la plateforme. | |
apply_signature | boolean Appliquez la signature numérique avant d'envoyer les factures à SDI. |
apply_legal_storage | boolean Appliquer le stockage légal pour les factures envoyées/reçues par l'identifiant fiscal. |
Responses
Response Schema: application/json
object (BusinessRegistryConfiguration-read) | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "fiscal_id": "string",
- "name": "string",
- "email": "string",
- "apply_signature": true,
- "apply_legal_storage": true
Response samples
- 200
- "data": {
- "id": "xxxxxxxxxxxxx",
- "fiscal_id": "000133445566",
- "name": "My company",
- "apply_signature": true,
- "apply_legal_storage": true
- "message": "string",
- "success": true,
- "error": "string"
Récupérer la liste des configurations du registre des entreprises
Authorizations:
Responses
Response Schema: application/json
Array of objects (BusinessRegistryConfiguration-read) | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/business_registry_configurations"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": [
- {
- "id": "xxxxxxxxxxxxx",
- "fiscal_id": "000133445566",
- "name": "My company",
- "apply_signature": true,
- "apply_legal_storage": true
- "message": "string",
- "success": true,
- "error": "string"
Récupérer une configuration du registre des entreprises
Authorizations:
path Parameters
fiscal_id required | string L'identité fiscale |
Responses
Response Schema: application/json
object (BusinessRegistryConfiguration-read) | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/business_registry_configurations/%7Bfiscal_id%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": {
- "id": "xxxxxxxxxxxxx",
- "fiscal_id": "000133445566",
- "name": "My company",
- "apply_signature": true,
- "apply_legal_storage": true
- "message": "string",
- "success": true,
- "error": "string"
Supprimer une configuration du registre des entreprises
Authorizations:
path Parameters
fiscal_id required | string L'identité fiscale |
Responses
Response Schema: application/json
data | any or null |
message | string |
success | boolean |
error | string or null |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "DELETE"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/business_registry_configurations/%7Bfiscal_id%7D"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": null,
- "message": "Deleted",
- "success": true,
- "error": "string"
Réactiver une configuration du registre des entreprises
Cette méthode vous permet de réactiver une configuration du registre d'entreprise qui a été désactivée précédemment, soit automatiquement, soit manuellement par l'utilisateur.
Authorizations:
path Parameters
fiscal_id required | string L'identité fiscale |
Responses
Response Schema: application/json
object (BusinessRegistryConfiguration-read) | |
message | string |
success | boolean |
error | string <nullable> |
Request samples
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
CURL *hnd = curl_easy_init(); curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "PATCH"); curl_easy_setopt(hnd, CURLOPT_URL, "https://sdi.openapi.it/business_registry_configurations/%7Bfiscal_id%7D/activate"); struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN"); curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers); CURLcode ret = curl_easy_perform(hnd);
Response samples
- 200
- "data": {
- "id": "xxxxxxxxxxxxx",
- "fiscal_id": "000133445566",
- "name": "My company",
- "apply_signature": true,
- "apply_legal_storage": true
- "message": "string",
- "success": true,
- "error": "string"
Importer la facture du client (fattura attiva)
Importer une facture client qui a déjà été envoyée à SDI. La facture ne sera pas envoyée à SDI. Vous pouvez désactiver les événements webhook en envoyant l'en-tête X-DisableEndpoints : true.
Authorizations:
Request Body schema: application/json
La nouvelle ressource CustomerInvoiceImport
invoice required | string XML de la facture encodé en base64. |
notifications | Array of strings Type de notification comme clé (RC, MC, NS, DT, NE, AT, EC), notification base64 comme valeur. Si au moins une notification n'est pas fournie, vous devez indiquer le nom du fichier de la facture et l'identifiant de l'utilisateur (sdi_id). |
invoice_file_name | string Le nom du fichier de la facture, à fournir uniquement lorsqu'il n'y a pas de notification. |
sdi_id | string L'ID SDI de la facture, à ne fournir que lorsqu'il n'y a pas de notification. |
Responses
Response Schema: application/json
uuid | string L'UUID utilisé pour identifier la facture de manière unique. |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "invoice": "string",
- "notifications": {
- "RC": "here the base64 encoded RC notification",
- "NE": "here the base64 encoded NE notification"
- "invoice_file_name": "string",
- "sdi_id": "string"
Response samples
- 201
- "uuid": "string"
Importation de la facture du fournisseur (fattura passiva)
Importer une facture fournisseur déjà reçue de SDI.
Authorizations:
Request Body schema:
La nouvelle ressource SupplierInvoiceImport
invoice required | string XML de la facture encodé en base64. |
metadata | string Le XML des métadonnées de la facture encodé en base64. S'il n'est pas fourni, vous devez indiquer le nom du fichier de la facture et l'identifiant de l'utilisateur. |
invoice_file_name | string Le nom du fichier de la facture, à fournir uniquement s'il n'y a pas de métadonnées. |
sdi_id | string l'ID SDI de la facture, à fournir uniquement en l'absence de métadonnées. |
Responses
Response Schema:
uuid | string L'UUID utilisé pour identifier la facture de manière unique. Si le XML de la facture contient plusieurs corps, vous obtiendrez un tableau d'UUIDs. |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "invoice": "string",
- "metadata": "string",
- "invoice_file_name": "string",
- "sdi_id": "string"
Response samples
- 201
- "uuid": "string"
Importer la facture du client (fattura attiva)
Importer une facture client qui a déjà été envoyée à SDI. La facture ne sera pas envoyée à SDI, mais elle sera envoyée au stockage légal. Vous pouvez désactiver les événements webhook en envoyant l'en-tête X-DisableEndpoints : true.
Authorizations:
Request Body schema: application/json
La nouvelle ressource CustomerInvoiceImport
invoice required | string XML de la facture encodé en base64. |
notifications | Array of strings Type de notification comme clé (RC, MC, NS, DT, NE, AT, EC), notification base64 comme valeur. Si au moins une notification n'est pas fournie, vous devez indiquer le nom du fichier de la facture et l'identifiant de l'utilisateur (sdi_id). |
invoice_file_name | string Le nom du fichier de la facture, à fournir uniquement lorsqu'il n'y a pas de notification. |
sdi_id | string L'ID SDI de la facture, à ne fournir que lorsqu'il n'y a pas de notification. |
Responses
Response Schema: application/json
uuid | string L'UUID utilisé pour identifier la facture de manière unique. |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "invoice": "string",
- "notifications": {
- "RC": "here the base64 encoded RC notification",
- "NE": "here the base64 encoded NE notification"
- "invoice_file_name": "string",
- "sdi_id": "string"
Response samples
- 201
- "uuid": "string"
Importation de la facture du fournisseur (fattura passiva)
Importer une facture fournisseur déjà reçue de SDI. La facture sera envoyée au stockage légal
Authorizations:
Request Body schema:
La nouvelle ressource SupplierInvoiceImport
invoice required | string XML de la facture encodé en base64. |
metadata | string Le XML des métadonnées de la facture encodé en base64. S'il n'est pas fourni, vous devez indiquer le nom du fichier de la facture et l'identifiant de l'utilisateur. |
invoice_file_name | string Le nom du fichier de la facture, à fournir uniquement s'il n'y a pas de métadonnées. |
sdi_id | string l'ID SDI de la facture, à fournir uniquement en l'absence de métadonnées. |
Responses
Response Schema:
uuid | string L'UUID utilisé pour identifier la facture de manière unique. Si le XML de la facture contient plusieurs corps, vous obtiendrez un tableau d'UUIDs. |
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "invoice": "string",
- "metadata": "string",
- "invoice_file_name": "string",
- "sdi_id": "string"
Response samples
- 201
- "uuid": "string"
Simuler la facture du fournisseur dans l'Environnement de travail (fattura passiva)
ici, vous devez envoyer une facture en tant que charge utile, elle sera livrée à vos points de terminaison configurés pour l'événement supplier-invoice. Le codice_destintario n'a pas d'importance, vous recevrez la facture sur votre compte. Le corps doit contenir un payload Invoice valide. Ce service n'est valable que dans l'Environnement de test
Authorizations:
Request Body schema: application/json
id_codice in cessionario_committente.dati_anagrafici.id_fiscale_iva is required and is the fiscal_id
object | |
Array of objects |
Responses
Request samples
- Payload
- C + Libcurl
- Csharp + Restsharp
- Go + Native
- Java + Okhttp
- Java + Unirest
- Javascript + Jquery
- Javascript + Xhr
- Node + Native
- Node + Request
- Node + Unirest
- Objc + Nsurlsession
- Ocaml + Cohttp
- Php + Curl
- Php + Http1
- Php + Http2
- Python + Python3
- Python + Requests
- Ruby + Native
- Shell + Curl
- Shell + Httpie
- Shell + Wget
- Swift + Nsurlsession
- "fattura_elettronica_header": {
- "dati_trasmissione": {
- "codice_destinatario": "1234567"
- "cedente_prestatore": {
- "dati_anagrafici": {
- "id_fiscale_iva": {
- "id_paese": "IT",
- "id_codice": "12345678901"
- "anagrafica": {
- "denominazione": "John Doe"
- "regime_fiscale": "RF01"
- "sede": {
- "indirizzo": "Via di Qua, 1",
- "cap": "20145",
- "comune": "Milano",
- "provincia": "MI",
- "nazione": "IT"
- "cessionario_committente": {
- "dati_anagrafici": {
- "id_fiscale_iva": {
- "id_paese": "IT",
- "id_codice": "09876543211"
- "anagrafica": {
- "denominazione": "Jane Doe"
- "sede": {
- "indirizzo": "Via di La, 2",
- "cap": "20145",
- "comune": "Milano",
- "provincia": "MI",
- "nazione": "IT"
- "fattura_elettronica_body": [
- {
- "dati_generali": {
- "dati_generali_documento": {
- "tipo_documento": "TD01",
- "divisa": "EUR",
- "data": "2018-07-10",
- "numero": "1"
- "dati_beni_servizi": {
- "dettaglio_linee": [
- {
- "numero_linea": 1,
- "descrizione": "Descrizione articolo",
- "prezzo_unitario": "10.00",
- "prezzo_totale": "10.00",
- "aliquota_iva": "22.00"
- "dati_riepilogo": [
- {
- "aliquota_iva": "22.00",
- "imponibile_importo": "10.00",
- "imposta": "2.20"
Response samples
- 200
- 400
- 401
- 500
- "success": "true",
- "message": "",
- "error": "null"