Free XML extractor
Extract XML from an e-invoice
Free, no sign-up, and 100% local in your browser.
100% local in your browser
Your invoice files are never sent to Billance. Unpacking runs entirely in your browser.
Free and unlimited
No account, no daily limit and no subscription — for as many invoices as you like.
Many invoices at once
Drop a whole batch and download the XML individually or all together.
Billance for desktop & mobile
Create, check and manage e-invoices on Mac, Windows, Linux, iOS and Android.
Try it with an example invoice
Load the official PDF example directly into the tool to extract its embedded invoice XML. A standalone XML file does not need extraction.
ZUGFeRD / Factur-X · EN 16931
Source: FeRD
Sample data, not a request for payment. The PDF is the official rental invoice example from ZUGFeRD 2.3.3, provided unchanged via the ZUGFeRD-csharp archive.
Three steps to the XML
Drop your PDF invoices
Drag one or more ZUGFeRD or Factur-X invoices into the area. Plain XML files are welcome too — they are simply passed through.
Let the attachment be read locally
Billance opens the PDF container in your browser, finds the embedded invoice attachment and checks whether it is readable. If a PDF holds several attachments, you decide which one is meant.
Inspect, copy or save the XML
Look at the XML directly, copy it to the clipboard, or save it to your device — one file at a time or all of them at once.
Why is the XML inside the PDF at all?
A ZUGFeRD or Factur-X invoice is a hybrid: what you see is an ordinary PDF/A-3, while the actual invoice data sits as an XML file attached to that PDF. For people this is convenient, because the invoice looks the way it always did. For any system that has to process the data — accounting, ERP, your tax adviser, a script of your own — that attachment is the interesting part. Getting it out is what this page is for.
What the extracted XML is for
Importing into accounting or ERP
Many systems accept the plain XML invoice but not the hybrid PDF. The extracted XML is then the file you upload.
Handing it to your tax adviser
When your adviser asks for structured invoice data, the embedded XML is exactly what they mean — not the printout and not the PDF.
Troubleshooting and checking
If the visible PDF diverges from the data, you only see it in the XML. From here the direct route leads into the validator, which checks the file against the official rule sets.
Development and testing
Building an integration needs real sample files. The extracted XML can be used as a test case unchanged.
Archiving the original
What has to be retained is the structured part in its original form. The extractor gives you exactly those bytes, unaltered and not regenerated.
Batch processing
For a whole folder of incoming invoices you pull out the XML in one pass instead of opening every file by hand.
Which files work — and which do not
ZUGFeRD and Factur-X from 2.0.1
These hybrid PDFs carry the invoice data as an embedded XML file, typically named factur-x.xml, zugferd-invoice.xml or xrechnung.xml. That attachment is what gets read and offered for download.
XRechnung as a plain XML file
There is nothing to unpack here — the file already is the XML. The extractor still accepts it, detects syntax and profile, and offers it for inspection and download.
Ordinary PDFs, scans and photos
A PDF without an embedded invoice attachment contains no structured data. No character recognition is run either, because it cannot produce a reliable e-invoice. In that case you get a clear message rather than an empty download.
Your invoices stay on your device
You select the files on your device; their contents are never sent to Billance for processing. Opening the PDF container, locating the attachment and the preview all run in your browser. Only the page and the program files it needs are loaded. No copy ends up in an account or a cloud archive — clear the list or close the page and the files are gone. Downloads you saved locally of course stay on your device.
Extract, view or validate?
This page hands you the XML file itself. If you would rather just read the invoice, the e-invoice viewer is the shorter route. If you want to know whether it meets the requirements, the validator checks it against the XML schema, EN 16931, XRechnung and Peppol. All three tools work on the same file and run locally in your browser.
Frequently asked questions about extracting XML
Go from unpacking e-invoices to creating them
With the Billance app you create XRechnung and ZUGFeRD files yourself, validate them as you go and manage your invoices in one place — locally on your device.
Create e-invoices with Billance