
XRechnung vs. ZUGFeRD: What is the difference?
XRechnung and ZUGFeRD are two formats for e-invoices. Both contain structured invoice data that can be read and processed by software.
The main difference is the output: XRechnung is a pure XML file, while ZUGFeRD is a PDF with embedded XML data.
#The key differences at a glance
| Format | Best for | Output |
|---|---|---|
| XRechnung | German public administration and clients that explicitly require XRechnung | Pure XML file |
| ZUGFeRD | Many business clients that accept a readable PDF invoice with e-invoice data | PDF with embedded XML |
#What is XML?
XML is a markup language, similar in spirit to HTML. When you open an XML file on your computer, you see structured code that looks roughly like this:
<rsm:ExchangedDocument>
<ram:ID>RN260617005</ram:ID>
<ram:TypeCode>380</ram:TypeCode>
<ram:IssueDateTime>
<udt:DateTimeString format="102">20260617</udt:DateTimeString>
</ram:IssueDateTime>
</rsm:ExchangedDocument>
Download sample XRechnung file (XML)
XML files, and therefore XRechnung files, are not very easy to read when you open them directly.
A ZUGFeRD invoice, on the other hand, looks like a normal PDF invoice and bundles an XML file inside the PDF, similar to an email attachment.
#How can I recognize a ZUGFeRD invoice?
When you open a ZUGFeRD invoice in Adobe Acrobat, you can quickly check whether it contains an embedded XML file:
To make sure that a PDF is a valid ZUGFeRD invoice, you should check it with a ZUGFeRD validator, for example at elster.de.
Download sample ZUGFeRD file (PDF)
#When should I use XRechnung?
Use XRechnung when:
- Your client is a public authority or public institution
- XRechnung is explicitly required
- You were given a routing ID or an upload portal for XRechnung files
- Your client expects a pure XML file
XRechnung is especially useful when the recipient defines a clear digital submission process. This can be a portal, a routing ID, or a specific requirement in the order.
#When should I use ZUGFeRD?
Use ZUGFeRD when:
- Your client is a private business
- A PDF invoice with embedded e-invoice data is sufficient
- The recipient should be able to read the invoice without a special XML viewer
- You want to send an invoice that is both human-readable and machine-readable
ZUGFeRD is especially practical if you still want to send a normal PDF invoice. The structured XML data is embedded in the PDF and can be read automatically by compatible accounting software.
#How do I create an XRechnung or ZUGFeRD invoice?
There are many tools for creating XRechnung and ZUGFeRD invoices.
With Cakedesk, you can generate both formats easily, either with the desktop app or online.


Further links: