Automation MCP Server Blog Pricing Contact

PDF to ZUGFeRD Converter API

ZUGFeRD PDF/A-3 with embedded XML, validated against EN 16931 before it is returned. Try the REST API demo, no code required. Drop a PDF to see exactly what InvoiceXML returns.

Drop a PDF to test the API

or browse files to upload

REST API demo · POST /transform/to/zugferd · PDF · Max 20 MB

Review every result before you use it. AI can make mistakes. Before you send the invoice or submit it to an authority, check the values in the embedded XML against your PDF, not only the visual layer.

From Messy Scanned PDF to Compliant XML

See exactly how your invoices are transformed automatically.

PDF Invoice

Unstructured

Legacy / scanned PDF with no embedded data

AI Extraction

Processing

OCR & AI extraction with confidence scores

Data Mapping

Structuring

Data mapped to selected compliance schema

Compliant Output

Validated ✓

All validation checks passed (XSD + Schematron)

Why Choose ZUGFeRD for Your Invoices?

ZUGFeRD bridges the gap between traditional PDF invoices and fully electronic data exchange. By embedding structured XML inside a standard PDF, your invoices stay readable for people while becoming machine-readable, eliminating manual data entry, reducing errors, and accelerating payment cycles. It's the European standard trusted by thousands of companies for compliant B2B and B2G invoicing.

Developer API

Built for Developers

A single REST endpoint. Send a PDF, receive structured XML. Built for ultra-high concurrency and sub-second processing.

  • Native, scanned and photographed PDF invoices, no preprocessing needed
  • Every response validated against official Schematron rules

Supports ZUGFeRD · Factur-X · XRechnung · UBL · CII · EN 16931

API Documentation
Terminal
$ curl -X POST https://api.invoicexml.com/v1/transform/to/zugferd \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: multipart/form-data" \
  -F "[email protected]"

// => 200 OK
// => { "id": "inv_8f3k...", "status": "completed" }

How PDF to ZUGFeRD Conversion Works

Upload Your Invoice

Drag and drop any standard PDF invoice. We extract the relevant financial data automatically.

XML Generation

Our engine maps your invoice data to the ZUGFeRD XML schema and validates it against EU business rules.

Download Your PDF

Receive a PDF/A-3 file with the XML embedded as an attachment, validated before it is returned. Review the XML values before you send it.

Human review

AI output requires human review of the structured data before use

With ZUGFeRD, one file holds two things: the PDF you see and the XML inside it. The XML is what the recipient's software and the tax authority process, so that is what you must check.

Check the values inside the XML

By default the visual layer is drawn from the same AI data as the XML. If you keep your original PDF (preserveOriginalPdf), it always looks right, even when the XML is not. Either way, compare these values in the XML against your source PDF:

  • Seller and buyer names, addresses and tax identifiers
  • Invoice number, issue date, due date and payment terms
  • Line items, quantities, unit prices and line totals
  • Tax rates, tax amounts and invoice totals
  • Payment details, such as the IBAN

See the XML in a readable form

The rendered PDF is built only from the XML values, so what you read there is exactly what the recipient's system receives. Only send, book or submit the invoice once every value matches. Our Terms of Service require this review for all AI output.

FAQ

Frequently Asked Questions

What is ZUGFeRD?

ZUGFeRD (Zentraler User Guide des Forums elektronische Rechnung Deutschland) is a German e-invoicing standard that embeds structured XML data inside a PDF/A-3 document, making invoices both human-readable and machine-processable.

Is ZUGFeRD accepted across Europe?

Yes. ZUGFeRD is fully compatible with the French Factur-X standard and conforms to the European Norm EN 16931, making it valid for cross-border B2B and B2G invoicing throughout the EU.

Do I need to change my PDF layout?

No. Send preserveOriginalPdf=true and the API keeps your PDF exactly as it is and embeds the XML into the PDF/A-3 container. By default it renders a clean new PDF from the extracted data, in the language of the invoice, or in English, German or French when you set the language field.

Which ZUGFeRD profiles are supported?

The converter produces the EN 16931 (Comfort) profile, the full European core invoice. To build other profiles from structured data, use the Create ZUGFeRD API.

Start free today

Ready to automate your invoices?

Validate, convert and embed compliant e-invoices through one API. Start your 30-day free trial. No credit card required.

GDPR Compliant No credit card required Setup in minutes
Peppol UBL
Factur-X
EN 16931
142 / 142 passed
Compliant
PDF/A-3 embedded