Available now

Factur-X / ZUGFeRD e-invoice format

Hybrid PDF/A-3 with embedded UN/CEFACT CII

One of three formats accepted under France’s B2B e-invoicing mandate (alongside UBL and CII). ZUGFeRD is the same format under Germany’s naming.

Deadline: France: September 2026 (receiving) / September 2027 (issuing), phased by company size.

Factur-X packages a normal, human-readable PDF together with a complete EN 16931 CII invoice embedded as an attachment, so one file works for a person and a machine. Getting genuine PDF/A-3 conformance right is the hard part: an OutputIntent with an embedded ICC profile, XMP metadata that properly declares the Factur-X extension schema (not just adds custom properties), embedded fonts, no transparency, and a file trailer ID.

InvoiceHub’s generator is verified against veraPDF — the open-source reference PDF/A conformance checker — in CI, not by eye. You can generate a default rendering, or embed the invoice data into a PDF you already have.

Try it

curl -X POST https://api.invoicehub.dev/api/v1/convert \
  -H "Authorization: Bearer ih_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"from": "UBL_2.1", "to": "Factur-X", "document": "<source UBL document>"}'

Structure

PDF/A-3b container
├─ visual invoice (rendered page — human-readable)
└─ embedded attachment: factur-x.xml (AFRelationship: Alternative)
     └─ full EN 16931 CII invoice XML
XMP metadata: pdfaid:part=3, pdfaid:conformance=B,
  fx:DocumentType=INVOICE, fx:ConformanceLevel=EN 16931

Common validation errors

Generate or convert to Factur-X / ZUGFeRD

POST /api/v1/generate for structured JSON in, or POST /api/v1/convert from any other supported format.

Other formats