XRechnung or ZUGFeRD? The difference and who gets which format
XRechnung and ZUGFeRD both meet the European standard EN 16931, and both count as an e-invoice under § 14 UStG, the German VAT Act. An XRechnung is a plain XML file that only software can read. A ZUGFeRD invoice is a PDF with embedded XML that looks like a normal invoice to a person. German public authorities usually require XRechnung with a Leitweg-ID (their routing ID). Between businesses both are allowed, and the parties agree on the format.
The difference in two sentences
An XRechnung is an XML file and nothing else. A ZUGFeRD invoice is a PDF with the same kind of XML file inside it.
Both follow the European standard EN 16931 for their content. That makes both an e-invoice under § 14(1) sentence 6 no. 1 UStG (German), and the tax authorities name both as permitted formats (section 14.1(12) to (14) UStAE, German). So the choice between XRechnung and ZUGFeRD comes down to the recipient: who gets the invoice and how they process it.
XRechnung and ZUGFeRD compared
| XRechnung | ZUGFeRD (2.0.1 or later, EN 16931 profile) | |
|---|---|---|
| Structure | plain XML file | PDF/A-3 with an embedded XML file |
| XML syntax | UBL or UN/CEFACT CII | UN/CEFACT CII |
| Published by | KoSIT on behalf of the federal and state governments | FeRD (Forum elektronische Rechnung Deutschland), identical to the French Factur-X |
| Readable by people | only with a viewer or software | yes, like a normal PDF |
| E-invoice under § 14 UStG | yes | yes, except the MINIMUM and BASIC-WL profiles |
| Leitweg-ID | required (buyer reference BT-10) | possible, not required |
| Typical use | invoices to public authorities (B2G) | invoices to businesses (B2B) and consumers (B2C) |
| If the parts differ | there is only the XML | the XML part takes precedence over the PDF |
People often miss the last row. In a hybrid format, the data in the structured part is the leading part, and where the two differ, it takes precedence over the image file (section 14.4(3) UStAE, German). A ZUGFeRD invoice whose PDF shows something different from its XML is read by the XML. Worth knowing if you put PDF and XML together by hand.
Who requires an XRechnung
XRechnung comes from public procurement. Suppliers to the German federal government have to invoice electronically (§ 3(1) ERechV, German), in principle using the XRechnung standard. The ordinance allows other standards that meet EN 16931 (§ 4(1) ERechV, German). The mandatory details include the contracting authority's Leitweg-ID (§ 5(1) no. 1 ERechV, German), which goes into the buyer reference field (BT-10) of the XRechnung.
You submit the invoice through an invoice receipt portal. Since September 2025 the federal administration has received e-invoices through one central platform, OZG-RE, which absorbed the former ZRE. You can upload a file, send via Peppol or email, or type the invoice into a form in the portal (E-Rechnung Bund, submission channels, German). Federal states and municipalities have their own rules and in some cases their own portals.
In practice: as soon as a contracting authority gives you a Leitweg-ID, XRechnung is the safe choice. Whether the portal also accepts ZUGFeRD depends on the portal, so ask before you rely on it.
Between businesses, both count
Since 1 January 2025, invoices between businesses based in Germany generally have to be e-invoices. Transition periods for sending run until the end of 2027 (§ 27(38) UStG, German); the details are on the page about the e-invoicing mandate. The law does not prescribe a format. It only requires EN 16931, or an agreed format from which the mandatory details can be extracted without loss (§ 14(1) sentence 6 UStG, German).
The tax authorities put it plainly: which permitted format is used is a civil-law question for the contracting parties to settle between themselves (section 14.1(12) sentence 5 UStAE, German). You may send a business customer an XRechnung, and you may send them a ZUGFeRD invoice. Both meet the obligation.
In B2B, ZUGFeRD often wins for a simple reason. The customer's accounting software reads the XML automatically, and anyone who just wants to check the invoice opens it like any other PDF. An XRechnung, on the other hand, arrives as an unreadable file for recipients without suitable software. All businesses have had to be able to receive e-invoices since 2025, but that does not mean everyone has a convenient viewer.
The ZUGFeRD XRECHNUNG profile
ZUGFeRD has several profiles, which set how much data the XML contains. MINIMUM and BASIC-WL are not enough for an e-invoice because, among other things, they lack the individual invoice lines (section 14.1(14) UStAE, German). BASIC, EN 16931 and EXTENDED are. There is also an XRECHNUNG profile: the embedded XML then follows KoSIT's German XRechnung rules, including the mandatory buyer reference.
This profile bridges the two. The recipient gets a readable PDF, and the XML inside meets the stricter XRechnung rules. Whether a public portal accepts such a file is still a question for the contracting authority. Many portals expect the plain XML file.
Which format to send to whom
- Public authority or public-sector buyerHas given you a Leitweg-ID. It goes in BT-10, and you submit through the buyer's portal.Format XRechnung
- Business in GermanyBoth formats are allowed. People and software can read ZUGFeRD, and if the customer asks for XRechnung, that works too.Format ZUGFeRD or XRechnung
- ConsumerNo e-invoicing obligation. A ZUGFeRD PDF opens like any other PDF.Format PDF or ZUGFeRD
- Business in another EU countryThe German obligation only applies between businesses based in Germany. In France, ZUGFeRD is called Factur-X.Format ZUGFeRD
For an online shop or a SaaS business this usually means ZUGFeRD as the default for everyone, and XRechnung only for the few public-sector customers. E-invoices are not required for consumers (§ 14(2) sentence 2 no. 1 UStG, German), but a ZUGFeRD PDF does no harm because the customer reads it like any other PDF. More on this on the page about e-invoices to consumers.
How Rechnungskit picks the format
Rechnungskit creates every invoice as ZUGFeRD 2.5 in the EN 16931 profile: a PDF/A-3 with embedded XML, checked against the standard and the mandatory details of § 14(4) UStG before it is issued. You do not need to set anything for this. Each invoice in the app shows its format and offers the PDF and the XML as separate downloads.

If you add a Leitweg-ID to a customer, their future invoices are created as XRechnung 3.0 automatically. The customer gets the XML file attached to the invoice email, plus a PDF they can read. All other customers stay on ZUGFeRD, and invoices already issued do not change. XRechnung requires a phone number for the seller (rule BR-DE-6). If it is missing from your settings, Rechnungskit holds the invoice as a task instead of issuing it incomplete.
There is one limit: Rechnungskit is not connected to Peppol and does not submit anything to public portals. You upload the XML file in the buyer's portal or send it the way the buyer specifies. How the formats fit together in the product is shown on the e-invoicing feature page.
FAQ
- [1] § 14 UStG, German VAT Act (German)
- [2] § 27(38) UStG, e-invoicing transition rules (German)
- [3] BMF letter of 15 Oct 2025 on mandatory e-invoicing, sections 14.1 and 14.4 UStAE (German)
- [4] §§ 3 to 5 Federal E-Invoicing Ordinance (ERechV, German)
- [5] E-Rechnung Bund: submission channels for OZG-RE (German)
- [6] KoSIT: XRechnung standard (German)
Rechnungskit is not a tax advisory or law firm. This article explains general principles and does not replace advice from a tax advisor (Steuerberater, § 5 StBerG) or a lawyer (§ 3 RDG). Rechnungskit is built for businesses based in Germany and prepares documents, tax rates and bookings automatically. How your specific case is treated remains your decision, ideally together with your tax advisor or a lawyer.
Every invoice automatically as a valid e-invoice.
Connect your payment provider and we take care of format, validation and archive. Start for free in test mode.
Try it now