ZUGFeRD / Factur-X XML Extractor

Extract, view and download the embedded e-invoice XML from ZUGFeRD and Factur-X PDFs — entirely in your browser.

Free for single files. Pro unlocks batch processing and bulk ZIP download.

Drop your PDF invoice here

or click to choose a ZUGFeRD / Factur-X PDF

Choose PDF

The file never leaves your browser — processing happens 100% locally on your device.

Batch processing (Pro)Pro

With Pro you can process several PDFs at once and download every extracted XML file together as a ZIP archive.

What is a ZUGFeRD or Factur-X invoice?

ZUGFeRD and Factur-X are hybrid e-invoice formats: an ordinary, human-readable PDF file additionally carries an embedded, machine-readable XML file containing all the invoice data. The recipient sees a familiar PDF view, while accounting software can read the structured data automatically — with no manual data entry.

Technically it is a PDF/A-3 that carries the XML as a file attachment. ZUGFeRD is the German specification (published by FeRD, the German e-invoicing forum), and Factur-X is its identical French counterpart. From ZUGFeRD 2.x onward, both are based on the same data model (UN/CEFACT Cross Industry Invoice, CII) and comply with the European standard EN 16931.

This extractor opens such a PDF directly in your browser, reads the embedded XML attachment, displays the source formatted, and additionally builds a clear, human-readable summary with the invoice number, trading parties, amounts and line items. The XML can be downloaded with a single click.

The tool is aimed at accountants, tax advisors, developers of ERP and invoicing software, freelancers, and anyone who needs to quickly check what structured data a received PDF invoice actually contains — for debugging or for further processing in other systems.

Since 2025, Germany has been phasing in a mandatory e-invoice requirement for B2B transactions, and ZUGFeRD and Factur-X are permitted formats. Anyone who receives or sends invoices therefore benefits from being able to reveal the XML content of a hybrid PDF.

How to use the ZUGFeRD extractor

  1. Drop or choose a PDFDrag a ZUGFeRD or Factur-X PDF onto the drop zone, or click to select a file from your device.
  2. Automatic detectionThe tool scans the PDF for embedded file attachments and identifies the e-invoice XML (for example factur-x.xml, zugferd-invoice.xml or xrechnung.xml).
  3. Review the XML sourceThe extracted XML is shown formatted and indented so the structure and fields are easy to follow.
  4. Read the invoice summarySwitch to the summary tab to see the invoice number, seller, buyer, net, VAT and gross amounts, and every line item in readable form.
  5. Download or copyDownload the XML as a standalone file or copy the source. Pro users process several PDFs at once and download every XML together as a ZIP.

Nothing is uploaded: the PDF is processed entirely in your browser with pdf.js. Sensitive invoice data stays on your device.

How the extractor works

A ZUGFeRD / Factur-X PDF is a PDF/A-3 document with embedded files. The extractor loads the PDF into memory with the pdf.js library (pdfjs-dist) and calls its attachment-reading function, which returns the filename and raw bytes of every attachment.

Because the XML can be named differently depending on the software, the tool checks both known filenames and the content itself: it looks for typical root elements such as CrossIndustryInvoice or Invoice and for the EN 16931 standard namespace. This reliably finds the correct XML even when the filename is unusual.

The XML is then parsed with the same parser used for XRechnung files. It automatically recognises UBL and CII structures and extracts header data as well as line items. All processing — PDF analysis, XML parsing and any ZIP export — runs exclusively on the client side.

Common use cases

Verify incoming invoices

Quickly check whether a received PDF really is a valid e-invoice with correctly embedded data before it is entered into your accounting.

Export data for accounting

Pull the plain XML out of the PDF to import it into an ERP or DATEV-compatible system that only processes structured data.

Software development and testing

Developers of invoicing and ERP software verify which fields their application actually writes into the PDF and use the XML as a test data set.

Training and support

Tax advisors and support teams make the difference between the visible PDF view and the machine-readable XML content tangible for clients and customers.

Example: extracted CII XML

A Factur-X PDF typically contains XML in the CII format (Cross Industry Invoice). After extraction, the relevant excerpt looks roughly like this:

<rsm:CrossIndustryInvoice>
  <rsm:ExchangedDocument>
    <ram:ID>RE-2026-0042</ram:ID>
    <ram:IssueDateTime>
      <udt:DateTimeString format="102">20260315</udt:DateTimeString>
    </ram:IssueDateTime>
  </rsm:ExchangedDocument>
  <rsm:SupplyChainTradeTransaction>
    <ram:ApplicableHeaderTradeAgreement>
      <ram:SellerTradeParty>
        <ram:Name>Sample Trading Ltd</ram:Name>
      </ram:SellerTradeParty>
      <ram:BuyerTradeParty>
        <ram:Name>Example Corp</ram:Name>
      </ram:BuyerTradeParty>
    </ram:ApplicableHeaderTradeAgreement>
  </rsm:SupplyChainTradeTransaction>
</rsm:CrossIndustryInvoice>

The extractor displays this source formatted and, in parallel, produces a readable summary: invoice RE-2026-0042 dated 15 March 2026, seller "Sample Trading Ltd", buyer "Example Corp".

Tips & limitations

Tips

  • Works with ZUGFeRD 2.x, Factur-X, and embedded XRechnung files in the BASIC, EN 16931 (COMFORT) and EXTENDED profiles.
  • The content check finds the right XML even when the attachment has an unusual filename.
  • Switch between the XML source and the invoice summary to see both the raw data and a quick overview.
  • Pro users process whole folders of PDFs in one pass and receive every XML bundled as a ZIP archive.

Limitations

  • Plain PDFs without an embedded XML attachment cannot be processed — they are not e-invoices.
  • The tool extracts and reads the XML but does not perform a full legal conformance check against EN 16931.
  • ZUGFeRD 1.0 (the profile with ZUGFeRD-invoice.xml) uses an older data model, so the summary may not show every field there.
  • Password-protected or corrupted PDFs cannot be opened.

Frequently asked questions

What is the difference between ZUGFeRD and Factur-X?

In terms of content, none. ZUGFeRD is the German name of the specification and Factur-X the French one. From version 2.x onward both are based on the same data model (UN/CEFACT CII) and are technically identical. A Factur-X file is therefore also a valid ZUGFeRD file and vice versa.

Are my invoices uploaded to a server?

No. The PDF is processed entirely in your browser with the pdf.js library. Neither the PDF nor the extracted XML leaves your device. The tool even works offline once the page has loaded.

Which filenames does the tool recognise for the embedded XML?

Known names such as factur-x.xml, zugferd-invoice.xml and xrechnung.xml are recognised. In addition, the tool inspects the content of every attachment, so XML files with a non-standard name are reliably found too.

Why do I see a "not an e-invoice" message?

This message appears when the PDF contains no embedded file attachment, or when no attachment can be identified as e-invoice XML. In that case it is an ordinary PDF without structured invoice data.

Can I reuse the extracted XML?

Yes. You can download the XML as a standalone file and import it into any software that processes structured e-invoices — for example accounting, ERP or DATEV systems.

Does the tool support XRechnung as well?

Yes. XRechnung is a pure XML format. If an XRechnung XML is embedded in a PDF (which happens with some ZUGFeRD profiles), it is detected. To inspect the XML content of a standalone XRechnung file, use our XRechnung viewer.

What does the invoice summary show?

The summary is a human-readable presentation of the XML data: invoice number, date, seller, buyer, VAT IDs, net, VAT and gross amounts, and every line item. This means you do not have to read the XML source yourself.

How does batch processing work in the Pro tier?

Pro users can select or drop multiple PDFs at once. The tool extracts the XML from each file and offers all results for a combined download as a ZIP archive — ideal for processing many incoming invoices.

Does the tool check whether the invoice is legally correct?

The tool extracts and displays the XML. It does not perform a full conformance check against EN 16931 with all business rules. For a plausibility check of the mandatory fields, use our XRechnung validator.

Which ZUGFeRD profiles are supported?

The extractor reads the XML of every profile. The readable summary works best with the BASIC, EN 16931 (COMFORT) and EXTENDED profiles of ZUGFeRD 2.x and Factur-X, since these are based on the current CII data model.

Related tools