xingen

Supported Formats

xingen accepts invoice data through several input channels, and exports a validated invoice in two fixed output formats. XML/PDF uploads are auto-detected — you never need to declare the format yourself; SAP and JSON submissions use a dedicated endpoint instead.

Input

UBL 2.1 XML

OASIS Universal Business Language — the baseline syntax for XRechnung and PEPPOL BIS Billing 3.0.

  • Endpoint: POST /v1/invoices/validate (multipart/form-data, file field)

CII XML (UN/CEFACT Cross Industry Invoice)

The alternative XML syntax for EN 16931, also valid for XRechnung. Some German ERP systems emit CII rather than UBL.

  • Endpoint: same as UBL — format is auto-detected from the root element

ZUGFeRD PDF/A-3

A hybrid PDF that embeds CII XML inside a PDF/A-3 file. xingen detects the PDF by its file signature, extracts the embedded XML, and validates that.

  • Endpoint: same as UBL/CII — upload the .pdf as the file field

SAP IDoc XML

SAP's INVOIC IDoc format. Converted to xingen's canonical invoice model before EN 16931 rules run.

  • Endpoint: POST /v1/invoices/validate/idoc

SAP OData (SupplierInvoice)

A SAP S/4HANA OData SupplierInvoice entity payload, submitted directly as JSON — no file export needed.

  • Endpoint: POST /v1/invoices/validate/odata

Structured JSON

Your own invoice data (invoice number, parties, lines) submitted directly, without generating XML yourself.

  • Endpoint: POST /v1/invoices

Plain PDF (AI extraction)

A plain, non-standardized invoice PDF — including scanned or image-based PDFs — with no embedded XML at all. xingen uses Claude AI to extract the invoice fields, then validates the result like any other submission. Available from the dashboard UI or directly via the API.

  • Endpoint: POST /v1/invoices/extract (multipart/form-data, file field, optional tier of FAST/ACCURATE)

Output

xingen exports a validated invoice in two fixed formats. For invoices already in a structured format (UBL, CII, IDoc, OData, JSON) there is no general-purpose reformatting endpoint — the two exports below only apply to an invoice that's already been submitted and validated. The one exception is a plain PDF submitted via POST /v1/invoices/extract: that endpoint's whole purpose is turning it into a ZUGFeRD PDF.

  • ZUGFeRD PDF — GET /v1/invoices/{id}/download — PDF/A-3 with embedded CII XML
  • SAP IDoc XML — GET /v1/invoices/{id}/download/idoc

Validation profiles

The profile parameter selects which ruleset validates the parsed invoice, independent of the input format above:

ProfileRules appliedPlan
EN16931European core invoice standard (EN 16931)Free
PEPPOLEN 16931 + PEPPOL BIS Billing 3.0Free
XRECHNUNGEN 16931 + German XRechnung (incl. Leitweg-ID)Pro

See Authentication for plan gating details.