Extract XML from Factur-X / ZUGFeRD API
Upload a Factur-X or ZUGFeRD PDF and extract the embedded CII XML invoice data instantly, no sign-up required.
Drop your Factur-X or ZUGFeRD PDF here
or browse files to upload
Accepted format: PDF · Max 20 MB
How Factur-X / ZUGFeRD XML Extraction Works
Upload Your Hybrid PDF
Drag and drop a Factur-X or ZUGFeRD PDF. We detect the embedded XML attachment automatically, no matter which branding the file uses.
Parse & Extract
The embedded CII XML (factur-x.xml or zugferd-invoice.xml) is pulled byte-for-byte from the PDF/A-3 container. No transformation, no reformatting.
Download XML
Receive a structured EN 16931 CII XML file, ready to import into your ERP, accounting system, or data pipeline.
Why Extract XML from Factur-X or ZUGFeRD?
Factur-X and ZUGFeRD invoices embed structured XML inside a standard PDF, but many accounting systems can only process the raw XML data. Extracting the XML lets you automate data import, eliminate manual entry, and integrate invoice data directly into your ERP or financial workflows. Whether you're archiving, validating, or feeding data into a pipeline, the extracted XML gives you machine-readable access to every field in the invoice. The same extractor handles both formats, since Factur-X and ZUGFeRD 2.x share an identical PDF/A-3 + CII XML container.
Built for Developers
A single REST endpoint. Upload a Factur-X or ZUGFeRD PDF, receive the embedded CII XML byte-for-byte. No transformation, no AI.
- Supports all formats: DOCX, XLSX, PDF, images, no preprocessing needed
- Works on scanned and photographed invoices
- Every response validated against official Schematron rules
Supports ZUGFeRD · Factur-X · XRechnung · UBL · CII · EN 16931
API Documentation$ curl -X POST https://api.invoicexml.com/v1/extract/xml \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: multipart/form-data" \ -F "[email protected]" // => 200 OK // => { "id": "inv_8f3k...", "status": "completed" }
Complete Factur-X Toolkit
Everything you need to create, convert, validate, and extract Factur-X invoices via REST API or online.
Build a Factur-X PDF/A-3 from structured data, no source PDF required.
Validate a Factur-X PDF against EN 16931 XSD schema and Schematron business rules.
Convert any PDF invoice into a Factur-X PDF/A-3 with embedded CII XML using AI extraction.
Extract the embedded CII XML from a Factur-X PDF for ERP import or further processing.
Frequently Asked Questions
Does this work with Factur-X and ZUGFeRD?
Yes. Factur-X and ZUGFeRD 2.x use the same PDF/A-3 + CII XML container and are detected automatically. The extractor recognises both the factur-x.xml and zugferd-invoice.xml attachment names and returns the embedded XML as-is.
What if my PDF has no embedded XML?
If the uploaded PDF does not contain an embedded CII XML attachment, use the AI Parse endpoint (/v1/parse/json) to read the visible invoice content, map it to the EN 16931 data model, and return structured invoice data.
What XML format is returned?
The extracted XML follows the UN/CEFACT CII (Cross Industry Invoice) format, the same syntax used inside Factur-X and ZUGFeRD files and one of the two official syntaxes of the EN 16931 European standard.
Is the extracted XML validated?
No. The XML is returned byte-for-byte from the PDF attachment. Pass it through /v1/validate/facturx, /v1/validate/zugferd, or /v1/validate/cii for a full Schematron validation pass.
Ready to automate your invoices?
Start your 30-day free trial. No credit card required.
Get Started For Free