Back to Blog
·7 min read·Facturwise Team

ZUGFeRD vs XRechnung: What Is the Difference and Which Do You Need?

ZUGFeRDXRechnungE-InvoicingGermanyEN 16931
ZUGFeRD vs XRechnung: What Is the Difference and Which Do You Need?

Two German Standards, One Confusion

If you run a business in Germany or invoice German clients, you have almost certainly come across two terms: ZUGFeRD and XRechnung. Both are e-invoicing formats. Both claim EN 16931 compliance. And both come up whenever the German e-invoicing mandate is discussed.

So which one do you actually need? The answer depends on who you are invoicing.

What Is ZUGFeRD?

ZUGFeRD stands for Zentraler User Guide des Forums elektronische Rechnung Deutschland. It was developed by FeRD, the Forum for Electronic Invoicing Germany, as a way to make e-invoicing practical for everyone, including businesses that have no technical setup for processing electronic data.

The idea is simple. You take a normal PDF invoice, the kind anyone can open and read, and you embed a structured XML file inside it. The XML follows the UN/CEFACT Cross Industry Invoice (CII) format. The result is a hybrid document: human-readable on the surface, machine-readable underneath.

Your client can view the invoice as a regular PDF. If their accounting software supports it, the system extracts the XML and imports the data automatically. If it doesn't, the PDF still works perfectly well on its own.

Since version 2.0, ZUGFeRD shares an identical specification with Factur-X, the French equivalent. Same XML, same structure, two names.

Key characteristics:

  • Hybrid PDF/A-3 + embedded CII XML
  • Works for everyone, no special software required on the receiving end
  • Delivery is flexible: email, upload, file share, whatever suits you
  • Multiple profiles ranging from Minimum to Extended
  • The EN 16931 profile maps to full EN 16931 compliance

What Is XRechnung?

XRechnung is Germany's national standard for invoices sent to public sector entities, including federal, state, and municipal government bodies. It was developed by KoSIT (Koordinierungsstelle für IT-Standards) and has been mandatory for government suppliers since November 2020.

Unlike ZUGFeRD, XRechnung produces a pure XML file with no PDF wrapper or visual representation. The XML uses the UBL (Universal Business Language) syntax by default, though CII is technically allowed. The data model aligns with EN 16931, plus a set of German-specific business rules and extensions.

XRechnung invoices are typically submitted through government portals like ZRE (Zentraler Rechnungseingang des Bundes) for federal agencies or OZG-RE for state-level entities. Some portals accept submission via the Peppol network as well.

Key characteristics:

  • Pure XML only, no PDF or visual layout
  • Based on UBL (primary) or CII syntax
  • EN 16931 compliant with additional German rules
  • Submitted through government portals (ZRE, OZG-RE, Peppol)
  • Mandatory for B2G (business-to-government) invoicing in Germany

The Core Difference

Here is the simplest way to think about it:

ZUGFeRD gives you a PDF that humans can read, with XML that machines can read. It works everywhere, for anyone.

XRechnung gives you XML that machines can read. Period. No PDF, no fallback for people who just want to see the invoice in their email.

ZUGFeRD was designed for the real world where most small businesses still send invoices by email and many recipients have no automated processing at all. XRechnung was designed for government procurement systems where everything is automated and a visual PDF would just get in the way.

Side-by-Side Comparison

AspectZUGFeRDXRechnung
FormatPDF + embedded XML (hybrid)Pure XML
XML standardCII (UN/CEFACT)UBL (primary) or CII
EN 16931 compliantYes (EN 16931 profile and above)Yes (with German extensions)
Human-readableYes, the PDF is always thereNo, requires software to render
Delivery methodEmail, upload, any file transferGovernment portals (ZRE, OZG-RE, Peppol)
Recipient setup neededNoneMust accept through a portal or Peppol
Primary use caseB2B invoicing, freelancers, SMEsB2G invoicing (government suppliers)
Visual customizationFull control over the PDF layoutNone, XML only
Who governs itFeRDKoSIT

When to Use Which

The decision tree is straightforward.

Are you invoicing a German government entity? Then you need XRechnung. Federal agencies have required it since November 2020, and most state governments have followed. You submit the XML through the appropriate portal. There is no alternative. A ZUGFeRD PDF sent by email will not be accepted.

Are you invoicing private companies or individuals? ZUGFeRD is the practical choice. Your clients get a familiar PDF. Their accounting software can extract the XML if it supports it. If it doesn't, nothing breaks. You stay compliant without forcing your clients onto a new platform.

Are you a freelancer or sole trader? Almost certainly ZUGFeRD. The vast majority of freelancers invoice private sector clients. Government contracts that require XRechnung are relatively rare for solo operators, and when they do come up, you usually know about the requirement in advance.

Do you invoice both government and private clients? You might need both. ZUGFeRD for your regular B2B clients, XRechnung for the occasional government contract. Since both implement EN 16931, the underlying data model is the same, and the difference comes down to how the invoice is packaged and delivered.

What About the German E-Invoicing Mandate?

Germany's e-invoicing mandate rolls out in stages:

  • January 2025: All businesses must be able to receive e-invoices in EN 16931 format (CII or UBL)
  • January 2027: Businesses above a certain annual turnover threshold must send e-invoices
  • January 2028: All businesses must send e-invoices

The mandate accepts both ZUGFeRD (CII) and XRechnung (UBL) for B2B transactions. The government did not pick a winner, so any EN 16931 compliant format works.

For most small businesses and freelancers, ZUGFeRD is the path of least resistance. You generate a PDF with embedded XML, send it by email, and you have met your obligation. No portals, no network registration, no new infrastructure.

Can ZUGFeRD and XRechnung Coexist?

They already do. Many German businesses use ZUGFeRD for day-to-day B2B invoicing and switch to XRechnung only when a government client requires it.

The data that goes into both formats is essentially the same. EN 16931 defines the fields, the business rules, and the tax logic. The difference is packaging. If your invoicing tool generates proper EN 16931 data, creating either format is mainly a question of output configuration.

In fact, a ZUGFeRD invoice at the Extended profile can carry more data than an XRechnung. The EN 16931 profile carries exactly the EN 16931 data set. So your ZUGFeRD invoices are already built on the same foundation.

Common Misconceptions

"XRechnung is replacing ZUGFeRD." No. The German e-invoicing mandate explicitly accepts both CII (ZUGFeRD) and UBL (XRechnung) syntax. Neither is being phased out. They serve different audiences.

"ZUGFeRD is just a PDF, not a real e-invoice." Wrong. A ZUGFeRD invoice at the EN 16931 profile or above includes a fully structured, EN 16931 compliant XML. The PDF is the human-readable layer on top. The XML is what makes it an e-invoice.

"I need XRechnung for all invoicing in Germany." Only if you invoice government bodies. For B2B, ZUGFeRD works perfectly and is usually more practical.

"ZUGFeRD and Factur-X are different things." They are the same specification since version 2.0. Factur-X is the French branding, ZUGFeRD is the German one. Identical technical standard.

How Facturwise Handles This

Facturwise generates ZUGFeRD / Factur-X invoices at the EN 16931 profile. Every invoice you create includes the embedded CII XML, proper PDF/A-3 structure, and all mandatory fields, calculated and validated automatically.

For the vast majority of freelancers and small businesses, this covers your compliance needs across Germany and the broader EU. You create an invoice, send it, and the e-invoicing layer is already baked in.

If you later need XRechnung for a specific government contract, the underlying data model is the same EN 16931 standard. Your compliance foundation is already in place.


Not sure where you stand with Germany's e-invoicing mandate? With Facturwise, every invoice you send already includes ZUGFeRD-compliant XML at the EN 16931 profile. No setup, no configuration, no XML knowledge needed. Start invoicing for free.