Rechnungen herunterladen
Bei der Arbeit mit Rechnungen ist es wichtig, zwischen folgenden Begriffen zu unterscheiden:
- Rechtlich gültige Rechnungsdatei: die endgültige offizielle Datei, die übermittelt (bei Ausgangsrechnungen) oder empfangen (bei Eingangsrechnungen) wurde.
- Originalrechnungsdatei: die erste Datei, die von B2Brouter für diese Rechnung empfangen wurde (bei Ausgangsrechnungen ist dies typischerweise eine importierte Quelldatei; bei Eingangsrechnungen ist dies die vom Aussteller empfangene Rechnung).
- Exportieren einer Rechnung in ein bestimmtes Format: B2Brouter erzeugt ein Dokument aus den Rechnungsdaten (dies kann von der rechtlich gültigen/originalen Datei abweichen).
- Anhänge: zusätzliche Dateien, die mit der Rechnung verknüpft sind (PDFs usw.). Anhänge sind nicht die Rechnung selbst.
Je nach Bedarf können Sie entweder:
- einen direkten Download-Endpunkt aufrufen (zum Beispiel
/invoices/{INVOICE_ID}/as/original), oder - einen Download-Pfad verwenden, der im Rechnungs-JSON zurückgegeben wird (zum Beispiel
download_legal_urloderattachments[].link).
Voraussetzungen
Section titled “Voraussetzungen”- Ein API-Schlüssel mit Zugriff auf das Projekt/Konto der Rechnung.
- Die interne B2Brouter-
invoice.id(diese kann über Listen-Endpunkte abgerufen werden).
Schritt 1: Rechnungsdaten abrufen (optional, aber empfohlen)
Section titled “Schritt 1: Rechnungsdaten abrufen (optional, aber empfohlen)”Rufen Sie Get invoice auf, um das Rechnungs-JSON abzurufen und die relevanten Felder zu finden:
curl --request GET \ --url https://api-staging.b2brouter.net/invoices/{INVOICE_ID}.json \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}' \ --header 'accept: application/json'Ausgangsrechnungen: rechtlich gültige Datei über download_legal_url (IssuedInvoice / IssuedSelfInvoice)
Section titled “Ausgangsrechnungen: rechtlich gültige Datei über download_legal_url (IssuedInvoice / IssuedSelfInvoice)”Nachdem eine Ausgangsrechnung gesendet wurde, kann die Antwort download_legal_url enthalten. Dieser Wert verweist auf die rechtlich gültige Datei, die dem Empfänger zugestellt wurde (zum Beispiel das exakt an ein Netzwerk/eine Plattform übermittelte XML oder das rechtlich gültige PDF).
download_legal_url ist ein relativer Pfad (keine vollständige URL), zum Beispiel:
{ "invoice": { "download_legal_url": "/attachments/download/{ATTACHMENT_ID}/{FILENAME}" }}Eingangsrechnungen: Original-/rechtlich gültige Datei über /invoices/{id}/as/original
Section titled “Eingangsrechnungen: Original-/rechtlich gültige Datei über /invoices/{id}/as/original”Bei Eingangsrechnungen ist die Originaldatei gleichzeitig die rechtlich gültige Datei. Laden Sie diese direkt herunter mit:
GET /invoices/{INVOICE_ID}/as/originalAnhänge (für Ausgangs- und Eingangsrechnungen): attachments[].link
Section titled “Anhänge (für Ausgangs- und Eingangsrechnungen): attachments[].link”Das Rechnungs-JSON kann ein attachments-Array enthalten. Jeder Eintrag enthält einen link, über den der gespeicherte Anhang heruntergeladen werden kann.
attachments[].link ist ein relativer Pfad (keine vollständige URL), zum Beispiel:
{ "invoice": { "attachments": [ { "link": "/attachments/download/{ATTACHMENT_ID}/{FILENAME}", "content_type": "application/pdf" } ] }}Eine ausführlichere Erklärung zu Anhängen und rechtlich gültigen PDFs finden Sie hier: Manage invoice attachments.
Schritt 2: Datei herunterladen
Section titled “Schritt 2: Datei herunterladen”Die von der API zurückgegebenen URL-Felder (download_legal_url, attachments[].link) sind relative Pfade. Stellen Sie ihnen die Basis-URL Ihrer Umgebung voran.
Download mit download_legal_url (Ausgangsrechnungen, rechtlich gültig)
Section titled “Download mit download_legal_url (Ausgangsrechnungen, rechtlich gültig)”curl --request GET \ --url https://api-staging.b2brouter.net{download_legal_url} \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}'Download mit attachments[].link (Anhänge)
Section titled “Download mit attachments[].link (Anhänge)”curl --request GET \ --url https://api-staging.b2brouter.net{attachment_link} \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}'Download mit /invoices/{id}/as/original (Originaldatei)
Section titled “Download mit /invoices/{id}/as/original (Originaldatei)”curl --request GET \ --url https://api-staging.b2brouter.net/invoices/{INVOICE_ID}/as/original \ --header 'X-B2B-API-Key: {YOUR_API_KEY}' \ --header 'X-B2B-API-Version: {YOUR_API_VERSION}'Hinweise
Section titled “Hinweise”- Bei Eingangsrechnungen liefert
/invoices/{INVOICE_ID}/as/originaldie vom Aussteller empfangene Datei zurück (Original = rechtlich gültig). - Bei Ausgangsrechnungen funktioniert
/invoices/{INVOICE_ID}/as/originalnur dann, wenn die Rechnung eine Originaldatei besitzt (zum Beispiel ein importiertes XML). Wurde die Rechnung direkt aus einem JSON-Payload erstellt, existiert möglicherweise keine Originaldatei zum Herunterladen.