Rechnung über SDI senden
Dieser Leitfaden erklärt, wie Sie über die B2Brouter API Rechnungen mit einem italienischen Unternehmen an das SDI (Il Sistema di Interscambio) senden.
Das SDI ist der zentrale Rechnungsaustausch-Zugangspunkt, der von der Agenzia delle Entrate verwaltet wird. Alle Rechnungen müssen über dieses System im Format FatturaPA 1.2 übermittelt werden.
Voraussetzungen
Section titled “Voraussetzungen”- Ein italienisches Unternehmen mit gültiger Partita IVA.
- Ein registriertes Konto in der Testumgebung von B2Brouter: Hier registrieren
- API-Berechtigungen (Anfrage per Support-Ticket: Ticket eröffnen)
Ein italienisches Unternehmenskonto erstellen
Section titled “Ein italienisches Unternehmenskonto erstellen”curl --request POST \ --url https://api-staging.b2brouter.net/accounts \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --data '{ "account": { "country": "it", "rounding_method": "half_up", "tin_value": "20339260422", "tin_scheme": 211, "name": "Test Sender Italy", "address": "Milano street, 1", "city": "Milano", "postalcode": "20019", "province": "Milano", "email": "john.doe@example.com" } }'Einen Kundenkontakt erstellen
Section titled “Einen Kundenkontakt erstellen”Beim Erstellen eines italienischen Kunden:
- Verwenden Sie
tin_valuefür die Partita IVA undtin_scheme: 9906. - Verwenden Sie
cin_valueundcin_schemezur Identifikation des Schemas für den Codice Fiscale. transport_type_codesollteit.sdisein.document_type_codesolltexml.fatturapa.1.2sein.- Wenn der Kontakt einen Codice Destinatario hat, geben Sie ihn im Feld
recipient_codean.
curl --request POST \ --url https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/contacts \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --data '{ "contact": { "tin_scheme": "9906", "tin_value": "IT12345678901", "name": "Esempio S.r.l.", "address": "Via Inventata 88", "postalcode": "00184", "city": "Roma", "province": "Roma", "country": "it", "transport_type_code": "it.sdi", "document_type_code": "xml.fatturapa.1.2", "recipient_code": "{CODICE_DESTINATARIO}" } }'Eine Rechnung erstellen und senden
Section titled “Eine Rechnung erstellen und senden”curl --request POST \ --url https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/invoices \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'content-type: application/json' \ --data '{ "send_after_import": true, "invoice": { "type": "IssuedInvoice", "invoice_lines_attributes": [ { "quantity": 10, "price": 47, "description": "Test Item", "taxes_attributes": [ { "name": "IVA", "percent": 22 } ] } ], "number": "1", "date": "2025-01-22", "due_date": "2025-02-22", "contact_id": {YOUR_CONTACT_ID} } }'Zusätzliche Felder für italienische Rechnungen
Section titled “Zusätzliche Felder für italienische Rechnungen”- type_document: Definiert den Dokumenttyp (TipoDocumento) im FatturaPA-Format.
- receipt_reference: Enthält Angaben zu einem referenzierten Beleg (optional, nur FatturaPA).
Rechnungsstatus prüfen
Section titled “Rechnungsstatus prüfen”Option 1: Status jeder Rechnung einzeln prüfen
Section titled “Option 1: Status jeder Rechnung einzeln prüfen”curl --request GET \ --url 'https://api-staging.b2brouter.net/invoices/{INVOICE_ID}?include=lines' \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'accept: application/json'Option 2: Status mehrerer Rechnungen prüfen
Section titled “Option 2: Status mehrerer Rechnungen prüfen”curl --request GET \ --url 'https://api-staging.b2brouter.net/accounts/{ACCOUNT_ID}/invoices?offset=0&limit=25' \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'accept: application/json'Sobald die Rechnung ihren Endstatus erreicht, markieren Sie sie als bestätigt, um sie aus der aktiven Liste zu entfernen:
curl --request POST \ --url https://api-staging.b2brouter.net/invoices/{INVOICE_ID}/ack \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'accept: application/json'Weitere Details finden Sie in der API-Referenz.