Skip to content
Rechnungskit
Guide · E-invoicing
Analysis

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.

Same standard EN 16931 · two packages
What the recipient gets
XRechnungplain XML
Fileinvoice.xml
SyntaxUBL or CII
Human readingonly with a viewer
Typical recipientpublic authority, public-sector buyer
Leitweg-IDrequired field (BT-10)
ZUGFeRDPDF with XML
Fileinvoice.pdf
SyntaxPDF/A-3 with CII XML
Human readingin any PDF reader
Typical recipientbusiness customer, consumer
Leitweg-IDoptional
Both formats count as an e-invoice. In ZUGFeRD the XML part is what counts legally, and the PDF is the copy people read.

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.

ZUGFeRD profiles · section 14.1(14) UStAE
Which profiles count as an e-invoice?
MINIMUM and BASIC-WLThe XML lacks the invoice lines, among other things
Not an e-invoice
BASIC, EN 16931 and EXTENDEDEnough for an e-invoice; Rechnungskit uses EN 16931
E-invoice
XRECHNUNGReadable PDF; the XML inside follows KoSIT's XRechnung rules, buyer reference included
E-invoice
Check with the contracting authority first whether its portal accepts a ZUGFeRD file in the XRECHNUNG profile.

Which format to send to whom

Decision by recipient
Who gets which format?
First questionWho receives the invoice?
  • 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
This applies unless the customer specifies otherwise. A format you agree on in the contract takes priority.

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.

Rechnungskit in English, invoice SN-2026-1047 from a subscription: on the left the preview of the German-language invoice with service period 04.10.2026 to 04.11.2026, two lines and a total of 21,00 €, at the bottom the note "E-Rechnung: Enthält strukturierte Rechnungsdaten nach ZUGFeRD 2.5 (EN 16931)". On the right "ZUGFeRD 2.5 · Archived document, Hybrid: PDF/A-3 with embedded XML (EN 16931)", "Immutably locked until 01/01/2035", the buttons "Download PDF" and "Download XML" and the status history with "Created" and "Archived (GoBD)"

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

No. Both implement the same standard and both count as an e-invoice (section 14.1(12) to (14) UStAE, German). XRechnung is the default standard for public authorities. ZUGFeRD is more practical when people also need to read the invoice.
Read more
Guide Getting documents into DATEV Unternehmen online: upload, Belegtransfer and data services Guide E-invoicing for B2C in Germany: does the mandate apply to online shops? Guide E-invoices and DATEV: how e-invoices reach your tax advisor Guide E-invoicing in Germany: the mandate explained for founders Guide Invoicing in a foreign currency in Germany: which exchange rate applies? (ECB, DATEV, OSS) Guide Clearing account (Geldtransit): booking PayPal, Stripe, Klarna, Mollie and Shopify Payments in DATEV Guide GoBD explained: principles, retention and what they mean for your invoices Guide Small-amount invoices in Germany (§ 33 UStDV): when the buyer's address can be left out Guide E-invoicing for small businesses in Germany (Kleinunternehmer): duties, exemptions, thresholds 2026 Guide The German cancellation button (§ 312k BGB): who needs it and how it works Guide The date of supply on German invoices: shipping date or payment date? Guide Leitweg-ID: what it is, how it is structured and how it gets onto the invoice Guide OSS return in Germany: deadlines, filing in the BZSt portal, nil returns and corrections Guide The OSS scheme explained: the €10,000 threshold, registration and an example Guide PayPal in DATEV: setup, bookings and documents for your tax advisor Guide Deferred revenue for SaaS and online courses in Germany: when a pRAP is required Guide Proforma invoices in Germany: what they are for and why they are not invoices Guide Deferred revenue in German accounting (pRAP): definition, bookings and an example Guide Changing the billing address on a German invoice afterward: is it possible? (without a cancellation) Guide Correcting an invoice in Germany: which route for which error? Guide Server-side tracking for Meta: Conversions API with a lean consent bar Guide Shopify and DATEV: interface, export and bookkeeping for Shopify stores in Germany Guide Shopify gift cards in Germany: gift card, discount code and store credit for VAT Guide Shopify Payments and Klarna in Germany: fees, payouts and bookkeeping Guide Shopify invoices in Germany: what Shopify does, what is missing, what applies from 2027 Guide Shopware invoices: what Shopware 6 does on its own and what is missing Guide Stripe DATEV export: getting Stripe payments into DATEV as a booking batch Guide Booking Stripe fees in Germany: clearing account, reverse charge and Stripe Technology Europe Ltd Guide Stripe Invoicing in Germany: creating invoices, pricing and e-invoicing Guide Stripe invoices with payment terms as e-invoices: bank transfer to the Stripe IBAN Guide Stripe invoices in Germany: what Stripe Invoicing and Billing do, what is missing, and what applies from 2027 Guide Shipping costs and VAT in Germany: 7%, 19% or tax-exempt? Guide The German withdrawal button (§ 356a BGB): mandatory since June 19, 2026 Guide WooCommerce DATEV export: options, file format and account mapping Guide WooCommerce invoices in Germany: plugins, mandatory details, e-invoicing Guide XRechnung vs ZUGFeRD: the XRechnung format explained Guide Payment terms on invoices in Germany: rules, due date calculation and wording Guide ZUGFeRD: format, example and profiles of the German e-invoice

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
de en