Convert ZUGFeRD to Excel
A ZUGFeRD invoice is a PDF with the real invoice hidden inside it as XML. Drop the PDF exactly as you received it; the embedded file is pulled out and turned into a spreadsheet.
| # | Description | Qty | Unit | Unit price | VAT % | Net amount |
|---|
| Category | Rate | Taxable base | VAT amount |
|---|
| # | Qualifier | Reference | Amount | Paid |
|---|
| Segment | Element | Value |
|---|
The PDF and the XML are the same invoice
ZUGFeRD is a hybrid: a human-readable PDF/A-3 with a machine-readable CII attachment, so a person and a system can both be right about what the invoice says. The catch is the profile. MINIMUM and BASIC WL carry header data only, while EN 16931 and EXTENDED carry the full line detail, so a sparse export is often the sender's profile choice rather than a failure at this end. The profile it used is shown next to the results.
What you get out
Every field below is read from the file itself. Nothing is inferred, and a field the invoice does not carry is left empty rather than filled in with a plausible guess.
- The XML lifted out of the PDF attachment, no copy and paste
- Invoice number, dates, currency and references from the header
- Seller and buyer with address, VAT number and contact
- Line items where the profile carries them, with quantity, price and VAT rate
- Tax per rate, the totals block, and the payment details
Questions
My ZUGFeRD PDF exported almost nothing.
Check the profile shown beside the results. MINIMUM and BASIC WL are legitimate ZUGFeRD profiles that simply do not contain line items, so there is nothing to extract. Ask the sender for EN 16931 if you need the detail.
Is Factur-X the same thing?
Technically yes. Factur-X 1.0 and ZUGFeRD 2.1 are the same specification with two national names, so a Factur-X PDF works on this page and a ZUGFeRD one works on the Factur-X page.
It says there is no XML in my PDF.
Then it is an ordinary or a scanned PDF. There is no structured invoice inside it to read, and this tool does not guess at pictures of text. Ask the sender for the ZUGFeRD version or the XML on its own.