What Is ZUGFeRD and How Is It Different from XRechnung?
Both ZUGFeRD and XRechnung are accepted e-invoice formats in Germany. But they work very differently. Here's which one you should be using.
Germany’s e-invoicing mandate accepts multiple structured formats. The two most common are ZUGFeRD and XRechnung. They’re both based on the European standard EN 16931, they’re both accepted by the tax office (Finanzamt), and they serve different use cases.
XRechnung: Pure Data
XRechnung is a pure XML file. There is no PDF component. No visual representation. Just structured data in a machine-readable format that software can parse, import, and process automatically.
The advantage is unambiguous machine readability. XRechnung is mandatory for B2G (business to government) invoices in Germany; if you invoice federal or state government agencies, XRechnung is typically what they require.
The disadvantage is that a human cannot read an XRechnung file without software that parses and renders it. Opening it in a text editor shows XML tags, not a readable invoice.
ZUGFeRD: Hybrid Format
ZUGFeRD (short for Zentraler User Guide des Forums elektronische Rechnung Deutschland) takes a different approach. A ZUGFeRD file is a PDF with an embedded XML file attached inside the PDF structure.
When a human opens a ZUGFeRD invoice, they see a normal-looking PDF. When accounting software opens it, it finds and extracts the embedded XML and processes the structured data automatically. The same file serves both purposes.
ZUGFeRD 2.0 and higher is compliant with EN 16931. ZUGFeRD 2.3 (the current version as of 2025) aligns closely with France’s Factur-X format, which matters for cross-border invoicing within the EU.
Which One to Use
For invoicing other businesses (B2B): ZUGFeRD is almost always the better choice. Your customers’ accounts payable systems can process it automatically, and recipients who want to read it manually can open the PDF. It’s the more human-friendly format.
For invoicing government clients (B2G): check the specific requirements of each agency. Federal agencies typically require XRechnung delivered via the OZG-RE portal. State (Länder) agencies vary.
For receiving invoices: you need to accept whatever your suppliers send. Your accounting software should handle both formats if you deal with a mix of supplier types.
ZUGFeRD Profiles
ZUGFeRD has multiple profiles with different levels of data richness:
MINIMUM. The legally required minimum fields. Suitable for simple invoices.
BASIC WL. Adds line item details. More useful for invoices with multiple items.
EN 16931. The full European standard implementation. Required if you want cross-border EU compliance.
EXTENDED. Additional fields beyond the standard, used for specific industry requirements.
For most German SMB invoicing, the EN 16931 profile is the right choice. It’s compliant, widely supported, and future-proof for the EU-wide ViDA (VAT in the Digital Age) reforms coming after 2028.
Practical Implications
If you use invoicing software, it likely already supports one or both formats. The main action to take is to verify whether your invoicing software’s ZUGFeRD or XRechnung output validates correctly against the EN 16931 schema. Generating a file that looks like ZUGFeRD but doesn’t validate is worse than generating a simple PDF, because it will fail automated processing silently.
The German government’s KOSIT validator (available free online) can validate XRechnung and ZUGFeRD files against the official schema. Run your output through it before sending your first structured invoice to an important customer.