What actually is an e-invoice?
An e-invoice is not simply a PDF you send by email. A true e-invoice contains the invoice data in a structured, machine-readable format that software can read and post automatically. The relevant benchmark is the European standard EN 16931, which defines which fields must exist and in what structure.
The difference goes beyond the file container. XRechnung implements EN 16931 as a German Core Invoice Usage Specification (CIUS) with additional business rules. ZUGFeRD offers profiles of different scope. Not every profile contains the complete compliant invoice dataset.
ZUGFeRD: the hybrid format (PDF + XML)
ZUGFeRD stands for the central user guide of Germany's electronic invoicing forum. It is a hybrid format: the file is an ordinary PDF/A-3 with an XML dataset invisibly embedded inside it. When you open it, you see the familiar invoice as a PDF, while accounting software reads the XML in the background.
This dual nature is exactly what makes ZUGFeRD popular in B2B: people can still read or print the invoice on screen, while machines process the structured data automatically. When you automatic invoicing with belegio, it's a practical middle ground between readability and automation.
According to German Ministry of Finance guidance, ZUGFeRD versions from 2.0.1 generally qualify, except the MINIMUM and BASIC-WL profiles. Attaching arbitrary XML to a PDF does not create a compliant e-invoice. Check the exported profile and validate its dataset.
XRechnung: the pure XML format
XRechnung is a pure XML format with no visible PDF layer. Open the file directly and you only see structured code, not a visually formatted invoice. To view it you need a viewer that translates the XML into a readable layout.
XRechnung is widely used for German public-sector recipients. B2G also requires checking the particular recipient’s routing ID (Leitweg-ID), transmission channel and accepted version. A compliant ZUGFeRD document can also be accepted depending on the recipient; a public authority does not automatically mean XRechnung exclusively.
ZUGFeRD vs XRechnung: the differences at a glance
Both formats are technically equivalent under the EN 16931 standard; the choice depends on the recipient and the use case. The following points sum up the most important differences:
- Structure: ZUGFeRD = PDF with embedded XML (hybrid) · XRechnung = pure XML.
- Readability: ZUGFeRD is human-readable without a tool · XRechnung needs a viewer.
- Typical use: ZUGFeRD mainly in B2B · XRechnung as the standard for public sector buyers (B2G).
- Standard: XRechnung specifies EN 16931; ZUGFeRD must use a suitable compliant version and profile.
- File extension: ZUGFeRD = .pdf · XRechnung = .xml.
| Feature | ZUGFeRD | XRechnung |
|---|---|---|
| Format | Hybrid: PDF with embedded XML | Pure XML |
| Human-readable | Yes (PDF view) | Using an XML viewer |
| Typical use | General B2B | Invoices to public authorities (B2G) |
| Standard | Suitable EN 16931 versions and profiles | EN 16931 with German CIUS rules |
| Processing | PDF + structured data | Fully automatable |
Which format should you choose as a Shopify merchant?
For the typical Shopify store with a B2B share, ZUGFeRD is usually the more pragmatic choice: your business customers receive a readable PDF, their software reads the structured data, both sides are served. XRechnung becomes relevant the moment you specifically supply public sector buyers.
The good news: whether your bookkeeping ends up in sevdesk or in Lexware Office changes nothing about the format principle. What matters is that your recipient can process the chosen format. When in doubt, just ask, or use a tool that handles both formats and lets you choose per invoice.
