Germany E-invoicing Guide
XRechnung, ZUGFeRD, Leitweg-ID, the Wachstumschancengesetz B2B mandate, and 10-year retention requirements. Everything you need to invoice German buyers and comply with the law.
Standard
XRechnung / ZUGFeRD
Legal basis
Wachstumschancengesetz
Receive obligation
1 Jan 2025
Send obligation
2027 / 2028
Mandate timeline
2020
B2G mandatory (federal)
XRechnung via Peppol required for all invoices to German federal authorities.
1 Jan 2025
B2B receive obligation
All German VAT-registered businesses must be able to receive structured e-invoices. ZUGFeRD and XRechnung both qualify.
1 Jan 2027
B2B send (over 800k EUR turnover)
Businesses with annual turnover above 800k EUR must send structured invoices. Plain PDFs no longer accepted for B2B.
1 Jan 2028
B2B send (all businesses)
All German VAT-registered businesses must send structured e-invoices. The transition is complete.
Exceptions: Exceptions: Invoices under 250 EUR (Kleinbetragsrechnungen), public transport tickets, and invoices to non-VAT-registered (private) buyers are exempt from the structured format requirement.
XRechnung vs ZUGFeRD: which do you need?
Both formats implement EN 16931 and are legally equivalent for B2B purposes under the Wachstumschancengesetz. The difference is in structure and use case.
XRechnung
- + Pure XML (UBL or CII syntax), ideal for EDI pipelines
- + Required for B2G (federal, state, municipal)
- + Transmitted via Peppol or PEPPOL-DE network
- - Not human-readable without a viewer
- - Requires Leitweg-ID for public sector recipients
ZUGFeRD / Factur-X
- + PDF/A-3 with embedded XML: human AND machine readable
- + Drop-in for existing PDF invoice workflows
- + Accepted for B2B (Wachstumschancengesetz)
- - Larger file size than pure XML
- - Not accepted for B2G (Peppol requires XRechnung)
Leitweg-ID: the German public sector routing identifier
Every German public authority has a Leitweg-ID, a structured routing identifier in the format XXXXXXXX-YYYY-ZZ. XRechnung invoices destined for a public buyer must carry the Leitweg-ID in field BT-10 (buyer reference).
Without a valid Leitweg-ID, the invoice cannot be routed through the Peppol network and will be rejected by the receiving authority's system.
Leitweg-IDs are public and can be looked up in the official register. Many German municipalities list their Leitweg-ID on their website under the "Lieferanteninformationen" (supplier information) section.
What your accounting software does not provide
Generating a structurally valid XRechnung or ZUGFeRD file is not the same as being legally compliant. These are the gaps most German accounting tools leave open:
| Software | Generates | What is missing |
|---|---|---|
| SAP ERP / S/4HANA | XRechnung (with SAP DRC module) | RFC 3161 timestamp, Legal Hold, chain of custody, Evidence Pack |
| DATEV Buchhaltungssoftware | ZUGFeRD 2.x (basic profiles) | PDF/A-3 conformance not always verified, no independent timestamp, no 10-year archival enforcement |
| Lexware | ZUGFeRD 2.x | No EN 16931 validation before output, no immutable archival, no audit trail |
| Sevdesk / Billomat | ZUGFeRD MINIMUM/BASIC WL | No line-item XML (EN 16931 profile), no qualified timestamp, no retention policy |
| Odoo | Factur-X (ZUGFeRD alias) | Community edition: validation optional; no Legal Hold, no tamper-evident archival |
10-year retention: HGB 257 and AO 147
Legal requirement
HGB 257 and AO 147 require businesses to retain invoices for 10 years from the end of the fiscal year in which the invoice was created.
The archived document must be stored in a way that ensures it cannot be altered (tamper-evidence) and can be retrieved and verified at any time during the retention period.
What SealDoc provides
- RFC 3161 timestamp from EU-qualified TSA at the moment of sealing
- SHA-256 hash chain that proves the document has not changed
- BUSINESS_7Y / custom retention policy enforced at storage level
- Legal Hold: prevent deletion even if retention period has not expired
- Evidence Pack: court-ready bundle with all audit metadata
Frequently asked questions
Is XRechnung mandatory for B2B invoices in Germany?
Can I still send a plain PDF invoice to a German company?
What is the difference between XRechnung and ZUGFeRD for B2B?
What is the Leitweg-ID and do I need it?
How long must I retain invoices in Germany?
My ERP already generates ZUGFeRD. What else do I need?
Validate your XRechnung or ZUGFeRD invoice now
Free, instant, no account required. Or generate compliant invoices via API.