Zum Inhalt springen

Entwickler

Eine Extraktions-API für den zuverlässigen Produktivbetrieb.

Laden Sie Dateien hoch, fragen Sie Status ab, empfangen Sie signierte Webhooks und lesen Sie normalisierte Felder mit Request-IDs, Idempotenz, Test-Token und OpenAPI-Vertrag.

API-Lebenszyklus

Asynchron verarbeiten. Anfragen sicher wiederholen. Fehler nachvollziehen.

Uploads sind asynchron und idempotent. Abgeschlossene Dokumente liefern normalisierte Felder; gesperrte oder fehlerhafte Dokumente liefern Details für die Fehlerbehandlung und den Support.

Upload
curl -X POST "https://www.exdata.app/api/v1/documents" \
  -H "Authorization: Bearer $EXDATA_API_TOKEN" \
  -H "Idempotency-Key: invoice-upload-001" \
  -F "file=@invoice.pdf" \
  -F "locale=en" \
  -F "custom_types[]=invoice"
Ergebnis
{
  "status": "completed",
  "mode": "live",
  "is_e_invoice": true,
  "extractions": {
    "type": {
      "value": "invoice",
      "candidates": ["invoice"]
    },
    "document_number": {
      "value": "RE-2026-1048",
      "candidates": ["RE-2026-1048"]
    },
    "sender_name": {
      "value": "Meyer Supply GmbH",
      "candidates": ["Meyer Supply"]
    },
    "recipient_name": {
      "value": "Northwind Operations Ltd.",
      "candidates": ["Northwind Operations"]
    },
    "payment_due_date": {
      "value": "2026-06-14",
      "candidates": ["14.06.2026"]
    },
    "net_amount": {
      "value": "1079.50",
      "candidates": ["1,079.50"]
    },
    "tax_breakdowns": {
      "value": [
        {
          "taxable_amount": "1079.50",
          "tax_amount": "205.10",
          "tax_rate": "19.00",
          "tax_collection_mechanism": "seller_collected"
        }
      ],
      "candidates": ["VAT 19% 205.10"]
    },
    "gross_amount": {
      "value": "1284.60",
      "candidates": ["EUR 1,284.60"]
    },
    "currency": {
      "value": "EUR",
      "candidates": ["EUR"]
    },
    "iban": {
      "value": "DE89370400440532013000",
      "candidates": ["DE89 3704 0044 0532 0130 00"]
    }
  },
  "latest_extraction_run": {
    "extraction_schema_version": "2026-08-28.1",
    "normalization_version": "base:2026-10-21.3"
  }
}

Integrationsweg

Testen Sie das Produktivverhalten, bevor Sie Live-Credits verbrauchen.

1

Test-Token erstellen

Testmodus-Token nutzen dieselben Endpunkte, Validierung, Idempotenz, Webhooks und Fehlerstruktur wie Live-Token.

2

Repräsentative Dateien hochladen

Verwenden Sie repräsentative PDFs, eigene Bezeichnungen und die passende Dokumentsprache. Idempotenzschlüssel verhindern, dass wiederholte Uploads doppelte Verarbeitung auslösen.

3

Zu Live-Token wechseln

Wechseln Sie, sobald Polling, Webhooks, Fehlerbehandlung und die Feldzuordnung im Zielsystem erfolgreich getestet sind.

Nach dem Start

Integrationsdetails sind sichtbar, wenn sie zählen.

Wenn ein Dokument fehlschlägt, gesperrt wird oder ein unerwartetes Ergebnis liefert, helfen maschinenlesbare Details Ihrer Integration weiter. Im Arbeitsbereich kann Ihr Team den Fall nachvollziehen.

Request-IDs
Jede API-Antwort enthält eine Request-ID, damit der Support eine Meldung der genauen Anfrage zuordnen kann.
Signierte Webhook-Header
Webhook-Zustellungen enthalten Ereignis-, Zustellungs-, Zeitstempel- und Signatur-Header zur Prüfung.
Maschinenlesbare Fehler
Fehler enthalten eine Nachricht, einen Code und eine Request-ID. So kann Ihre Integration über erneute Versuche entscheiden und dem Support die nötigen Angaben liefern.
OpenAPI-Spezifikation
Die v1-API-Spezifikation ist veröffentlicht und validiert, damit SDKs, Integrationen und Dokumentation übereinstimmen.
Anfragelimits und Wartezeiten
Token- und Kontolimits schützen den Dienst und geben Integrationen ein klares Wiederholungsmodell.

Dokumentation

Beginnen Sie mit dem Schnellstart und binden Sie dann Polling oder Webhooks an.