Zum Hauptinhalt springen
Invoice-Converter.comInvoice-Converter
BlogPreise
Rechnung umwandelnUmwandeln
Umwandeln
⌘K
Dokumentationsübersicht
Formate und Standards verstehen
Compliance-Leitfäden
XRechnung Standard
ZUGFeRD Format
PDF/A-3 für ZUGFeRD
CII Cross Industry Invoice
UBL Universal Business Language
DIN EN 16931-1 Standard
PEPPOL Network
Länder- und Regulatorikregeln
EU E-Rechnungspflicht
EU-E-Rechnung
E‑Rechnung in der EU 2026: was Sie umsetzen sollten (und warum)
Playbook für Top‑EU‑Märkte (DE, FR, IT, ES, PL, NL)
PEPPOL in der EU: so funktioniert der Austausch wirklich
CTC/Clearance und Portale in der EU: belastbare Integrationen bauen
Länderguides
Deutschland
Frankreich
Italien
Spanien
Polen
Niederlande
Belgien
Österreich
Dänemark
Schweden
Finnland
Validierungs- und Einreichungsprobleme lösen
Leitweg-ID Validierung
Support-Leitfäden
Support
Warum Rechnungen geprüft werden müssen
PDF-Vorbereitung
API-Fehler
API-Automatisierung
Umgang mit Schemafehlern
Hilfe zur Prüfvalidierung
Support
Fehlende Angaben
Käuferreferenz
Zahlung und IBAN
USt und Reverse Charge
Summen und Rundung
Anzahlungen
Positionen
ZUGFeRD-PDF-Warnungen
Validierungsleitfäden
Beobachtete Validierungsfälle
Fälligkeit oder Bedingungen
IBAN bei Überweisung
PDF/A-3-Fähigkeit
VATEX-Befreiungsgrund
Review gegen Download
Öffentliche Testrechnungs-Bibliothek
Gültige XRechnung-UBL-Basisrechnung
Ungültige XRechnung ohne Zahlungsbedingungen
Factur-X/ZUGFeRD EN-16931-CII-XML
XRechnung-Rundungs- und IBAN-Grenzfall
KoSIT Validierungsfehler
FEHLER
BR-DE-1
BR-DE-2
BR-DE-3
BR-DE-4
BR-DE-5
BR-DE-6
BR-DE-7
BR-DE-8
BR-DE-9
BR-DE-10
BR-DE-11
BR-DE-14
BR-DE-15
BR-DE-16
BR-CO-3
BR-CO-4
BR-CO-9
BR-CO-10
BR-CO-11
BR-CO-13
BR-CO-14
BR-CO-15
BR-CO-16
BR-CO-17
BR-CO-25
BR-CO-26
BR-S-1
BR-S-5
BR-S-8
BR-61
BR-AE-02
BR-AE-10
BR-E-01
BR-E-05
BR-DE-19
BR-05
BR-22
BR-23
BR-24
BR-25
BR-26
BR-47
BR-57
BR-DE-22
BR-DE-30
BR-DE-31
PEPPOL-EN16931-R001
PEPPOL-EN16931-R010
PEPPOL-EN16931-R020
PEPPOL-EN16931-R046
PEPPOL-EN16931-R120
PEPPOL-EN16931-R130
WARNUNG
BR-DE-17
BR-DE-18
BR-DE-20
BR-DE-21
BR-DE-26
BR-DE-27
BR-DE-28
Referenzdaten nachschlagen
Glossar
E
EN 16931
Einheitencode
E-Reporting
Echtzeit-Meldung
Echtzeit-Rechnungsmeldung (RTIR)
e-Factura RO
EAS (Electronic Address Scheme)
ebInterface
C
CIUS
CII
Codeliste
Chorus Pro
Codice Destinatario
X
XRechnung
XML-Schema (XSD)
XML
Z
ZUGFeRD
Zahlungsart
F
Factur-X
Finvoice
U
UBL
USt-IdNr.
P
PEPPOL
PEPPOL BIS
Participant-ID
PDF/A-3
PDP (Plateforme de Dématérialisation Partenaire)
A
Access Point
S
SMP
SML
Steuerkategorie
Schematron
SDI (Sistema di Interscambio)
Svefaktura
L
Leitweg-ID
K
KoSIT
KSeF
KvK-Nummer
V
Validierung
Vertragsreferenz
ViDA
VeriFactu
ViDA Säule 1: Digital Reporting Requirements
ViDA Säule 2: Einheitliche USt-Registrierung
ViDA Säule 3: Plattformökonomie
B
Business Term (BT)
Business Group (BG)
BIC
Bestellung (PO)
R
Reverse-Charge
Rechnungsart-Code
Rechnungsposition
Rabatt / Zuschlag
I
IBAN
ISO 6523
G
Gutschrift
GLN (Global Location Number)
D
Dokumentenreferenz
D-U-N-S-Nummer
Digipoort
Q
QR-Code Zahlung
T
TicketBAI
O
OVT-tunnus
OIOUBL
N
NemHandel
Codelisten
Währungscodes (häufig)
Ländercodes (häufig)
USt-Kategorie-Codes
Zahlungsmittel-Codes
Maßeinheiten-Codes (häufig)
Rechnungstyp-Codes (häufig in XRechnung)
XRechnung Felder
Rechnungsgrundlagen
BT-1
BT-2
BT-3
BT-5
BT-6
BT-7
BT-8
BT-10
BT-11
BT-12
BT-14
BT-15
BT-16
BT-17
BT-18
BT-19
BT-21
BT-22
BT-23
BT-24
BT-25
BT-26
Lieferung und Zahlung
BT-9
BT-13
BT-20
BT-59
BT-60
BT-61
BT-70
BT-71
BT-72
BT-73
BT-74
BT-75
BT-76
BT-77
BT-78
BT-79
BT-80
BT-81
BT-82
BT-83
BT-84
BT-85
BT-86
BT-87
BT-88
BT-89
BT-90
BT-91
Verkäuferdaten
BT-27
BT-28
BT-29
BT-30
BT-31
BT-32
BT-33
BT-34
BT-35
BT-36
BT-37
BT-38
BT-39
BT-40
BT-41
BT-42
BT-43
BT-62
BT-63
BT-64
BT-65
BT-66
BT-67
BT-68
BT-69
Käuferdaten
BT-44
BT-45
BT-46
BT-47
BT-48
BT-49
BT-50
BT-51
BT-52
BT-53
BT-54
BT-55
BT-56
BT-57
BT-58
Nachlässe und Zuschläge
BT-92
BT-93
BT-94
BT-95
BT-96
BT-97
BT-98
BT-99
BT-100
BT-101
BT-102
BT-103
BT-104
BT-105
Steuern und Summen
BT-106
BT-107
BT-108
BT-109
BT-110
BT-111
BT-112
BT-113
BT-114
BT-115
BT-116
BT-117
BT-118
BT-119
BT-120
BT-121
BT-122
BT-123
BT-124
BT-125
Rechnungspositionen
BT-126
BT-127
BT-128
BT-129
BT-130
BT-131
BT-132
BT-133
BT-134
BT-135
BT-136
BT-137
BT-138
BT-139
BT-140
BT-141
BT-142
BT-143
BT-144
BT-145
BT-146
BT-147
BT-148
BT-149
BT-150
BT-151
BT-152
BT-153
BT-154
BT-155
BT-156
BT-157
BT-158
BT-159
BT-160
BT-161
BT-162
BT-163
ZUGFeRD Profile
MINIMUM
BASIC WL
BASIC
EN 16931
EXTENDED
Formate und Tools vergleichen
Vergleiche
PDF24 Tools
sevDesk
Integrieren und umsetzen
Hilfe bei Plattformstörungen
Support
Vorübergehend nicht verfügbar
Fehlendes Ergebnis
Validierung nicht verfügbar
Browserfehler
Konto und Rate Limits
Guthaben und Abonnements
Behördliche Validierung
ERP-Export-Validierungsleitfäden
DATEV
Lexware
SAP Business One
Odoo
Microsoft Dynamics
Vertrauen und Sicherheit
Developer API
  1. E-Rechnungs-Ressourcen
  2. Developer API

Integration

Markdown-Export

Externe API V1 Dokumentation

Technisches Dokumentationspaket für Self-Service-API-Implementierung und Review. Diese Seite fasst den öffentlichen API-Vertrag, das Zugangsmodell und die Integrationsvorgaben zusammen.

ÜberblickWichtige FunktionenLieferartefakteSchnellstartAPI-Zugang erhaltenBasis-URL und API-SchlüsselErste erfolgreiche AnfrageHäufige Payload-BeispieleErforderliche HeaderAuth-RegelnIdempotenz-VertragEndpunkt-ReferenzAusgabeformat-MatrixÄnderungsprotokollFehlervertragHäufige Fehler und nächste SchritteRate- und Payload-LimitsRetry-LeitfadenTask-Lebenszyklus und AufbewahrungSupportmodellTechnisches Feedback sendenPostman und OpenAPI verwenden

Überblick#

Die API akzeptiert Multipart-Uploads, liefert JSON-Antworten zurück und nutzt Standard-HTTP-Statuscodes sowie Bearer-Authentifizierung. Senden Sie eine PDF-Rechnung, warten Sie auf die asynchrone Verarbeitung und rufen Sie dann das erzeugte Ergebnis ab.

Senden Sie eine PDF-Rechnung oder strukturierte Rechnungsdaten an einen Konvertierungsendpunkt. Invoice-Converter startet daraus einen asynchronen Task für Extraktion, Validierung und Artefakterzeugung. Der Ergebnisendpunkt liefert eine Datei nur, wenn das angeforderte Artefakt validiert, geprüft und ausgabebereit ist; während der Verarbeitung liefert er 202 TASK_NOT_READY, bei blockierenden Validierungsfehlern 422 VALIDATION_FAILED.

Status: freigabepflichtig

Basispfad: /api/v1. Zuletzt synchronisiert 2026-06-09.

Wichtige Funktionen#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Upload-Endpunkte für PDF-Rechnungen und strukturierte Rechnungsdaten
  • KI-gestützte Extraktion von Rechnungsdaten
  • Automatisierte EN 16931- und KoSIT-Validierung
  • Ausgabeformate XRechnung, ZUGFeRD, EN16931, UBL und CII
  • Asynchrone Verarbeitung mit Polling; kleine Rechnungen dauern oft ca. 30 Sekunden, größere bis zu 1-2 Minuten
  • Idempotente Schreibzugriffe für sichere Wiederholungen

Lieferartefakte#

Laden Sie maschinenlesbare Integrationsartefakte für die Developer API herunter.

OpenAPI JSON
Postman-Kollektion

Schnellstart#

Drei API-Aufrufe schließen eine Konvertierung ab. Der Convert-Endpoint wird unter /api/v1 bereitgestellt und erfordert Authentifizierung.

POST /api/v1/invoices:convert

Live

PDF-Rechnung konvertieren

POST /api/v1/invoices:convert-structured

Live

Strukturierte Daten konvertieren

GET /api/v1/tasks/{task_id}

Live

Task-Status abfragen

API-Zugang erhalten#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Erstellen Sie ein Konto und beantragen Sie API-Zugang.
  • Nutzen Sie Prepaid-API-Credits für freigegebene Tests oder Enterprise-Abrechnung per Order Form für produktive Nutzung.
  • Erstellen Sie nach Freigabe einen Live-API-Schlüssel für Ihren Tenant.
  • Senden Sie die erste Anfrage mit Bearer-Token und stabilem Idempotency-Key.

Basis-URL und API-Schlüssel#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Produktive Basis-URL: https://www.invoice-converter.com/api/v1.
  • Live-API-Schlüssel nutzen den Produktions-Host und das Präfix icp_....
  • Nutzen Sie freigegebene Live-Schlüssel für Onboarding und Validierungsläufe, bevor Sie Produktionsvolumen senden.
  • Behandeln Sie API-Schlüssel als serverseitige Secrets. Betten Sie sie nicht in Browser- oder Mobile-Clients ein.

Erste erfolgreiche Anfrage#

Nutzen Sie diese Sequenz als minimalen Happy Path nach Erstellung eines API-Schlüssels.

  • Hochladen: POST /api/v1/invoices:convert mit Authorization, Idempotency-Key, file=@invoice.pdf und format=XRECHNUNG.
  • Alle 10-15 Sekunden pollen: GET /api/v1/tasks/{task_id}, bis der Status completed oder failed ist.
  • Herunterladen: GET /api/v1/tasks/{task_id}/result?download=xml; speichern Sie X-Correlation-ID für den Support-Trace.
  • Für ZUGFeRD-PDF-Ausgabe beim Convert format=ZUGFERD und beim Result download=pdf anfragen.
  • Für strukturierte Eingaben rufen Sie POST /api/v1/invoices:convert-structured mit pdf_file=@invoice.pdf, data_file=@invoice-data.json und dem Ziel-format auf.
  • Optional client_reference oder external_invoice_id und source_system für ERP-Abgleich senden.
  • Bei gesplitteten ERP-Exporten einer Rechnung wiederholen Sie data_file; bei mehreren Rechnungen starten Sie pro Rechnung einen Task mit eigenem Idempotency-Key.
  • Speichern Sie result_artifacts aus der Statusantwort, um zu sehen, ob XML/PDF-Artefakte validiert, zwischengespeichert oder wegen Abhängigkeiten noch nicht verfügbar sind.

Häufige Payload-Beispiele#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • XRECHNUNG: format=XRECHNUNG senden.
  • ZUGFERD: format=ZUGFERD senden; für hybrides PDF/A-3 im Result download=pdf nutzen.
  • Strukturierte Eingabe: pdf_file plus ein oder mehrere data_file-Parts senden; akzeptierte Datenformate sind CSV, JSON, XML, XLSX und TXT, mit jedem unterstützten Zielformat. Die data_file-Parts müssen alle Pflichtdaten enthalten; das PDF ergänzt keine fehlenden Felder.
  • Mehrere Rechnungen: separate Convert-Requests senden und jede zurückgegebene task_id nachverfolgen; wiederholte data_file-Parts sind nur für gesplittete Exporte derselben Rechnung gedacht.
  • UBL: format=UBL senden; für deterministische Integrationen ein explizites profile wie PEPPOL, XRECHNUNG oder EN16931 setzen.
  • CII: format=CII senden; für deterministische Integrationen ein explizites profile wie EN16931 setzen.

Erforderliche Header#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Authorization: Bearer <api_key>

Auth-Regeln#

Der API-Zugang ist freigabepflichtig. Freigegebene Accounts können API-Schlüssel im Profil erstellen, sie als Bearer-Token verwenden und Prepaid-Credits für freigegebene Tests oder Enterprise-Abrechnung per Order Form für Produktion nutzen.

  • API-Schlüssel sind tenant-gebundene Live-Zugangsdaten für freigegebene Accounts. Das aktuelle Produktionspräfix ist icp_....
  • API-Schlüssel werden nach Freigabe des API-Zugangs im Profil erstellt, rotiert und widerrufen. Kopieren Sie neue Schlüssel sofort, da Klartextschlüssel nur einmal angezeigt werden.
  • Fehlende oder ungültige API-Schlüssel liefern 401.
  • Aufrufe an /api/v1 erhalten automatisch eine X-Correlation-ID, wenn sie fehlt.
  • Schreibaufrufe erfordern Idempotency-Key; halten Sie diesen Wert über Retries stabil.
  • Verwenden Sie Server-zu-Server-Integration aus Ihrem Backend. Browser-Origin-Zugriff ist in Produktion eingeschränkt.

Idempotenz-Vertrag#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Senden Sie bei jedem Schreibaufruf einen Idempotency-Key.
  • Idempotency-Key-Werte müssen [A-Za-z0-9._:-]+ entsprechen und höchstens 200 Zeichen lang sein.
  • Bei eigenem Key liefert derselbe Key + identischer Payload die zwischengespeicherte Antwort.
  • Derselbe Key + anderer Payload liefert 409 IDEMPOTENCY_CONFLICT.
  • Idempotenzschlüssel laufen nach 24 Stunden ab.

Endpunkt-Referenz#

Alle Endpunkte sind unter /api/v1 erreichbar. Timeouts erscheinen als 504 und andere temporäre Verbindungsfehler als 502; Korrelations-IDs helfen dem Support bei der Nachverfolgung über den gesamten Ablauf.

POST /api/v1/invoices:convert

Live

Laden Sie eine PDF-Rechnung hoch und starten Sie die asynchrone Konvertierung. Gibt eine task_id für das Polling zurück. Anfrage: multipart/form-data; file (binary, erforderlich) — PDF-Rechnungsdatei; format (string, erforderlich) — Zielausgabeformat; siehe Formatmatrix unten; profile (string, optional, empfohlen für deterministische Integrationen) — explizites Compliance-Profil. Standardwerte richten sich nach dem Format; erlaubte Werte sind unter anderem XRECHNUNG, PEPPOL, EN16931 und unterstützte ZUGFeRD/Factur-X-Profile; jurisdiction (string, optional) — expliziter ISO-3166-1-Alpha-2-Jurisdiktionskontext für Validierungs-/Hinweisprüfungen; überschreibt das Profil nicht; transaction_scope (string, optional) — expliziter Transaktionskontext, zum Beispiel B2G; wird auf die eingereihte Aufgabe angewendet; delivery_channel (string, optional) — einer von PEPPOL, DIRECT_XML, PORTAL, EMAIL_PDF, UNKNOWN; wird auf die eingereihte Aufgabe angewendet; client_reference oder external_invoice_id (string, optional) — kundenseitige Rechnungs-/Jobreferenz, die in angenommenen Uploads und Task-Statusantworten zurückgegeben wird; source_system (string, optional) — vorgelagertes ERP- oder Abrechnungssystem, das in angenommenen Uploads und Task-Statusantworten zurückgegeben wird. Antwort: 202 Accepted.

POST /api/v1/invoices:convert-structured

Live

Laden Sie ein Träger-PDF plus CSV-, JSON-, XML-, XLSX- oder TXT-Rechnungsdaten hoch und starten Sie die asynchrone Konvertierung aus strukturierten Daten. Die data_file-Parts sind die einzige semantische Quelle; das PDF füllt keine fehlenden Rechnungsfelder auf. Für ZUGFeRD/Factur-X wird es als Träger-PDF verwendet, bei XML-orientierten Ausgaben als eingereichtes PDF-Artefakt gespeichert. Nutzen Sie einen Konvertierungsrequest pro Rechnung; wiederholen Sie data_file nur für gesplittete ERP-Exporte derselben Rechnung. Anfrage: multipart/form-data; pdf_file (binary, erforderlich) — Träger-PDF für ZUGFeRD/Factur-X-Einbettung und Speicherung bei XML-orientierten Ausgaben; data_file (binary, erforderlich, wiederholbar) — CSV-, JSON-, XML-, XLSX- oder TXT-Rechnungsdaten als einzige semantische Quelle; .xls, PDFs und Bilddateien werden als data_file abgelehnt; für gesplittete Header-/Positions-Exporte derselben Rechnung wiederholen; die Aliasse data_files und data_files[] werden akzeptiert; Gesamtgröße strukturierter Daten — maximal 2 MB über alle data_file-Parts; format (string, erforderlich) — Ziel-Ausgabeformat; unterstützt XRECHNUNG, ZUGFERD, EN16931, UBL und CII; profile (string, optional, empfohlen für deterministische Integrationen) — explizites Compliance-Profil. Standard wird anhand des Formats gewählt; jurisdiction (string, optional) — expliziter ISO-3166-1-Alpha-2-Jurisdiktionskontext für Validierungs-/Hinweisprüfungen; überschreibt das Profil nicht; transaction_scope (string, optional) — expliziter Transaktionskontext, zum Beispiel B2G; wird auf die eingereihte Aufgabe angewendet; delivery_channel (string, optional) — einer von PEPPOL, DIRECT_XML, PORTAL, EMAIL_PDF, UNKNOWN; wird auf die eingereihte Aufgabe angewendet; client_reference oder external_invoice_id (string, optional) — kundenseitige Rechnungs-/Jobreferenz, die in angenommenen Uploads und Task-Statusantworten zurückgegeben wird; source_system (string, optional) — vorgelagertes ERP- oder Abrechnungssystem, das in angenommenen Uploads und Task-Statusantworten zurückgegeben wird. Antwort: 202 Accepted.

GET /api/v1/tasks/{task_id}

Live

Fragen Sie den aktuellen Status eines Konvertierungs-Tasks ab. Gibt pending, processing, completed oder failed zurück. Abgeschlossene Tasks enthalten result_artifacts-Diagnosen, damit Clients sehen können, welche XML/PDF-Artefakte verfügbar, im Cache gespeichert und durch Validierung verifiziert sind. Bei failed enthält die Antwort ein error-Feld mit dem Fehlergrund. Anfrage: keins (GET); task_id (path, erforderlich) — UUID, die vom Convert-Endpoint zurückgegeben wurde. Antwort: 200 OK.

GET /api/v1/tasks/{task_id}/result

Live

Laden Sie die erzeugte Datei herunter (XML oder PDF). Die Ergebnissyntax entspricht dem ursprünglichen Task-Format: XRECHNUNG/EN16931/UBL liefern UBL-XML, CII/ZUGFERD liefern CII-XML, und ZUGFERD + download=pdf liefert ein hybrides PDF/A-3. Bei anderen Formaten kann download=pdf ein gerendertes PDF liefern. Wiederholte Downloads können aus zwischengespeicherten Artefakten bedient werden, wenn der Validierungsnachweis noch aktuell ist. Während der Verarbeitung liefert der Endpunkt 202 TASK_NOT_READY; bei blockierenden Validierungsfehlern 422 VALIDATION_FAILED, bei wiederholbaren Abhängigkeitslücken 503 und bei Artefakt-Invariantfehlern 500, jeweils ohne Dateiinhalt. Anfrage: keins (GET); task_id (path, erforderlich) — UUID, die vom Convert-Endpoint zurückgegeben wurde; download (query, erforderlich) — xml oder pdf. Antwort: 200 OK.

Ausgabeformat-Matrix#

FormatSyntaxVersion / ProfilContent-TypeDateiendung
XRECHNUNGUBL 2.1 XMLXRechnung 3.0.2application/xml.xml
ZUGFERDCII-XML (download=xml) / hybrides PDF/A-3 (download=pdf)ZUGFeRD 2.4 / Factur-X 1.08application/xml oder application/pdf.xml / .pdf
EN16931UBL 2.1 XMLEN 16931application/xml.xml
UBLUBL 2.1 XMLOASIS UBL 2.1application/xml.xml
CIIUN/CEFACT CII XMLD16Bapplication/xml.xml

Änderungsprotokoll#

Neueste extern sichtbare API-Änderungen.

2026-06-02

External API-Zugang ist jetzt als freigabepflichtiger Zugang dokumentiert, nicht als unbeschränkte Key-Erstellung. Klargestellt, dass kein formales SLA, keine Service Credits und keine Vertragsstrafen gelten, sofern nicht in einem Order Form vereinbart. format ist jetzt an beiden Konvertierungsendpunkten erforderlich; fehlende Werte liefern 400 FORMAT_REQUIRED und nicht unterstützte Werte 422 INVALID_FORMAT. download ist jetzt bei Task-Ergebnisrequests erforderlich; fehlende Werte liefern 400 DOWNLOAD_FORMAT_REQUIRED und nicht unterstützte Werte 400 INVALID_DOWNLOAD_FORMAT. Konvertierungsuploads akzeptieren jetzt client_reference/external_invoice_id und source_system für kundenseitigen Abgleich. Angenommene Konvertierungen und Task-Statusantworten enthalten jetzt status_url, primary_result_format, primary_result_url sowie gesendete Abgleichsfelder.

2026-06-01

Strukturierte Konvertierung akzeptiert jetzt alle öffentlichen Ausgabeformate: XRECHNUNG, ZUGFeRD, EN16931, UBL und CII. Strukturierte Konvertierung akzeptiert jetzt wiederholbare data_file-Teile sowie die Aliase data_files und data_files[] für getrennte ERP-Exporte. Strukturierte Multi-Datei-Bundles müssen genau eine Rechnung beschreiben und schlagen bei widersprüchlichen oder fehlenden Bundle-Rechnungs-IDs früh fehl. Klargestellt, dass mehrere Rechnungsdokumente als separate Konvertierungs-Tasks mit jeweils eigenem Idempotency-Key eingereicht werden sollten.

2026-05-27

POST /api/v1/invoices:convert-structured für Träger-PDF plus CSV/JSON/XML/XLSX/TXT-Konvertierung aus strukturierten Daten über unterstützte Ausgabeformate ergänzt. Dokumentiert, dass strukturierte Daten an diesem Endpunkt die einzige semantische Quelle sind; das PDF wird für die Hybrid-Einbettung verwendet. OpenAPI- und Postman-Artefakte für strukturierte Konvertierung aktualisiert.

2026-05-08

Prepaid-API-Credits für Nicht-Enterprise-Mandanten ergänzt. 402 INSUFFICIENT_API_CREDITS für freigegebene Mandanten ohne Enterprise-Abrechnung per Order Form oder Prepaid-Credits dokumentiert. Bestätigt, dass idempotente Replays keine zusätzlichen API-Credits verbrauchen. Klargestellt, dass External API V1 das Modellrouting serverseitig steuert, während Profil- und Lieferkontext vom Aufrufer gesetzt werden.

2026-03-06

Task-result-Downloads für CII- und ZUGFERD-Ausgaben formatgetreu gemacht. Wiederverwendung zwischengespeicherter Ergebnisartefakte für wiederholte XML-/PDF-Downloads desselben Tasks ergänzt. Polling-Kontingente an endpoint-bezogene gewichtete Rate-Limit-Buckets angeglichen.

2026-02-23

Klarere und konsistente API-Fehlerantworten über alle Endpunkte ergänzt. Convert-Optionen erweitert und XML-/PDF-Downloadverhalten für Task-Ergebnisse dokumentiert. Retry-Sicherheit mit strengeren Idempotenzanforderungen und Validierung verbessert. OpenAPI-/Postman-Artefakte an das aktuelle API-Verhalten angepasst.

2026-02-20

Statusantworten auf statusfokussierte Ausgabe vereinfacht. IndexNow-Submission-Validierung und Authentifizierungsprüfungen gehärtet. API-Zugriffskontrollen und Request-Limiting in Produktion gehärtet.

Fehlervertrag#

CodeHTTPWiederholbarHinweise
AUTHENTICATION_REQUIRED401NeinFehlender/leerer Bearer-Token
INVALID_API_KEY401NeinAPI-Schlüssel nicht gefunden, widerrufen oder abgelaufen
INSUFFICIENT_API_CREDITS402NeinFreigegebene Prepaid-Testcredits oder Enterprise-Abrechnung per Order Form nutzen
IDEMPOTENCY_KEY_REQUIRED400NeinSchreibendpunkt ohne Idempotency-Key aufgerufen
INVALID_IDEMPOTENCY_KEY400NeinIdempotency-Key hat ein ungültiges Format
IDEMPOTENCY_CONFLICT409NeinDerselbe Key wurde mit anderem Request-Hash verwendet
IDEMPOTENCY_IN_PROGRESS409JaSicherer Retry später mit demselben Key/Payload möglich
FORMAT_REQUIRED400NeinKonvertierungsrequest ohne erforderliches format
INVALID_FORMAT422NeinNicht unterstütztes Konvertierungsformat
CLIENT_REFERENCE_CONFLICT400Neinclient_reference und external_invoice_id unterscheiden sich
DOWNLOAD_FORMAT_REQUIRED400NeinTask-Ergebnisrequest ohne erforderliche download-Abfrage
INVALID_DOWNLOAD_FORMAT400Neindownload muss xml oder pdf sein
AUTH_SERVICE_UNAVAILABLE503JaAuth-Backend nicht verfügbar
RATE_LIMIT_SERVICE_UNAVAILABLE503JaRate-Limit-Backend nicht verfügbar
RATE_LIMITED429JaRetry-After und Kontingent-Header beachten
BAD_REQUEST400NeinUngültiges JSON oder ungültiger UUID-Pfadparameter
PAYLOAD_TOO_LARGE413NeinUpload-Größenlimit überschritten
INVALID_UPLOAD400NeinUpload konnte nicht gelesen/geparst werden
UPLOAD_FAILED4xx/5xxBedingtUngültige Request-Optionen korrigieren; Retry nur bei transienten 5xx-Fällen
TASK_NOT_READY202JaFür asynchrone Fertigstellung erneut pollen
VALIDATION_FAILED422NeinBlockierende Validierungsfehler bestehen weiterhin; Rechnungsdaten vor erneutem Versuch korrigieren
AUTHORITATIVE_VALIDATION_UNAVAILABLE503JaAutoritative Validierung, Nachweisspeicherung oder Hybrid-Erzeugungsabhängigkeit nicht verfügbar; später erneut versuchen
TASK_STATUS_FAILED4xx/5xxBedingtRetry bei transientem Service-Zustand
TASK_RESULT_FAILED4xx/5xxBedingtRetry bei transientem Service-Zustand
XML_GENERATION_FAILED500JaTemporärer Fehler bei der XML-Generierung oder Timeout
PDF_GENERATION_FAILED500JaTemporärer Fehler bei der PDF-Generierung oder Timeout
ARTIFACT_GENERATION_RERUN_REQUIRED503NeinStrikte Artefakt-Erzeugung ist nach serverseitigen Retries fehlgeschlagen; nach Erholung der Abhängigkeit eine neue Konvertierung starten
ZUGFERD_SOURCE_PDF_INCOMPATIBLE422NeinStrikte Hybrid-PDF-Erzeugung kann XML nicht in das hochgeladene Quell-PDF einbetten
OUTPUT_PROFILE_REQUIRED422NeinEin generischer Ausgabe-Contract erfordert ein explizites Profil, wenn kein eindeutiger Standard bestimmt werden kann
OUTPUT_PROFILE_CONFLICT422NeinProfil widerspricht dem gewählten Ausgabeformat oder der expliziten Variante
PROXY_ERROR502/504JaTemporärer Verbindungsfehler (504 bei Timeout)

Häufige Fehler und nächste Schritte#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Mit Backoff erneut versuchen: 429, 500, 502, 503, 504.
  • Request oder Quelldaten korrigieren: 400, 409, 413, 422.
  • Zugang oder Zugangsdaten korrigieren: 401, 403.
  • Freigabe, Prepaid-Testcredits oder Enterprise-Abrechnung per Order Form klären: 402 INSUFFICIENT_API_CREDITS.
  • Später weiter pollen: 202 TASK_NOT_READY.
  • Bei 422 VALIDATION_FAILED das betroffene Feld, die Regel-ID und den Behebungsvorschlag (Remediation) einem menschlichen Prüfer vorlegen, bevor mit korrigierten Rechnungsdaten erneut versucht wird.
  • Bei 503 AUTHORITATIVE_VALIDATION_UNAVAILABLE denselben Task später erneut abrufen; es wurde kein ungeprüftes Artefakt ausgeliefert.

Rate- und Payload-Limits#

Rate-Limits pro API-Schlüssel und Payload-Größen gelten für alle API-Aufrufe. Abgelehnte Konvertierungen verbrauchen keine Prepaid-API-Credits; Rate-Limits werden separat pro Endpunkt ermittelt.

  • Endpunktbezogene Limits sind kostenbewertet. Beide Upload-Endpunkte nutzen das Basiskontingent (Standard 30/min und 500/hour); Task-Polling liegt aktuell standardmäßig bei mindestens 10/min und 120/hour, Result-Downloads bei mindestens 10/min und ungefähr 134/hour.
  • Lesen Sie effektive Limits aus X-RateLimit-Limit-Minute und X-RateLimit-Limit-Hour in den Antworten.
  • Maximale PDF-Uploadgröße: 20 MB
  • Maximale Uploadgröße strukturierter Daten: 2 MB insgesamt über alle data_file-Parts.
  • Maximale JSON-Payloadgröße: 1 MB
  • Rate-Limit-Antworten enthalten Retry-After, X-RateLimit-Limit-Minute und X-RateLimit-Limit-Hour.

Retry-Leitfaden#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Verwenden Sie exponentielles Backoff mit Jitter.
  • Wiederholen Sie nur transiente Klassen (429, 500, 502, 503, 504) und möglichst mit demselben Payload und Idempotency-Key.
  • Wiederholen Sie Validierungs- oder Vertragsfehler (400, 401, 402, 403, 409, 413, 422) nicht blind.

Task-Lebenszyklus und Aufbewahrung#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Abgeschlossene und fehlgeschlagene Tasks bleiben nach Erreichen des Endstatus 10 Minuten verfügbar.
  • Die Verarbeitung läuft nach 5 Minuten in ein Timeout; festhängende Tasks werden automatisch als failed markiert.
  • Idempotenzschlüssel laufen nach 24 Stunden ab.
  • Rate-Limit-Zähler werden in einem rollierenden Fenster zurückgesetzt.

Supportmodell#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Support zu Geschäftszeiten mit wirtschaftlich angemessenen Bemühungen.
  • Kein formales SLA, keine Service Credits und keine Antwortzeitverpflichtung, sofern nicht in einem Order Form vereinbart.

Technisches Feedback senden#

Teilen Sie Implementierungsfragen, Risiken und erforderliche Vertragsänderungen mit unserem Team.

Technisches Feedback per E-Mail senden

Postman und OpenAPI verwenden#

Nutzen Sie diese Punkte als praktische Prüfschritte für diesen Abschnitt.

  • Postman-Collection importieren und baseUrl, apiKey sowie eine neue Variable idempotencyKey setzen.
  • Collection der Reihe nach ausführen: convert, Status pollen, dann Ergebnis abrufen.
  • OpenAPI JSON für typisierte Clients nutzen, aber Datei-Upload, Polling und binäre Results mit Integrationstests absichern.
  • X-Correlation-ID in Logs speichern, damit Support Requests Ende-zu-Ende nachverfolgen kann.
Vertrauen und Sicherheit
Auf dieser Seite
ÜberblickWichtige FunktionenLieferartefakteSchnellstartAPI-Zugang erhaltenBasis-URL und API-SchlüsselErste erfolgreiche AnfrageHäufige Payload-BeispieleErforderliche HeaderAuth-RegelnIdempotenz-VertragEndpunkt-ReferenzAusgabeformat-MatrixÄnderungsprotokollFehlervertragHäufige Fehler und nächste SchritteRate- und Payload-LimitsRetry-LeitfadenTask-Lebenszyklus und AufbewahrungSupportmodellTechnisches Feedback sendenPostman und OpenAPI verwenden

Invoice-Converter.com

Wir helfen Unternehmen in ganz Europa, Rechnungen mit Validierungsunterstützung in XRechnung und andere E-Rechnungsformate umzuwandeln. Prüfen Sie Grenzfälle vor der Einreichung.

20.000+ Rechnungen verarbeitet
Schnell & Sicher
Hunderte zufriedene Kunden

Funktionen

PDF umwandeln & erstellen

  • PDF zu XRechnung
  • PDF zu UBL
  • PDF zu XRechnung (CII)
  • PDF zu ZUGFeRD
  • PDF zu Factur-X
  • XRechnung erstellen
  • XRechnung zu PDF

Ansehen & validieren

  • XRechnung/XML Viewer
  • XRechnung Validator

Schnellzugriff

  • Ressourcen
  • Vertrauens- und Sicherheitscenter
  • Developer-API-Dokumentation
  • Blog
  • FAQ
  • Preise
  • Klimabeitrag

Rechtliches

  • Impressum
  • Datenschutz
  • Auftragsverarbeitungsvertrag
  • AGB
  • Geld-zurück-Garantie

Kontakt aufnehmen

contact@invoice-converter.com
Jetzt umwandeln
© 2026 Invoice-Converter.com.Gemacht mit in Europa
DSGVO-konform
Deutsche Server