German e-invoicing, done the way the mandate actually requires.
The deadlines, the two profiles Steerd emits, how correctness is checked, and exactly what changes on an invoice you send today.
The mandate, as dates.
Three dates, not months of reading a directive. Receiving becomes obligatory first, then issuing, roughly staggered by turnover. Who this actually applies to, and who stays exempt, is below.
Domestic B2B invoices only, where both you and your recipient are established in Germany. Three groups stay outside the issuing obligation at any date: a Kleinunternehmer under § 19 is permanently exempt from issuing one, though you can still opt in; a Kleinbetragsrechnung of EUR 250 gross or less can stay a plain invoice; and a supply exempt under § 4 Nr. 8 to 29 UStG sits outside the obligation too.
Every business must be able to receive an e-invoice.
Issuing becomes obligatory for larger businesses.
Applies once your prior year turnover exceeded EUR 800,000. Steerd cannot see your turnover, so its own derivation does not switch on until January 1, 2028 either way. If you are already above the threshold, use the per-invoice override to issue as an e-invoice from today rather than waiting.
Issuing becomes obligatory for domestic B2B invoices generally.
This is the date Steerd itself switches on automatically. It does not apply to a Kleinunternehmer under § 19, who stays exempt from issuing permanently, or to a Kleinbetragsrechnung of EUR 250 gross or less.
Two profiles, one file a person and a machine can both read.
Steerd emits e-invoices in the two profiles that matter for this mandate. Every one is a single PDF/A-3b hybrid file: a person sees a normal PDF, while the recipient's software reads the structured data embedded inside that same file.
EN 16931 hybrid
A ZUGFeRD/Factur-X style hybrid carrying the EN 16931 data set, for an ordinary business recipient.
XRechnung
The German CIUS built on EN 16931, for a public sector recipient that requires it by name.
- One PDF/A-3b hybrid file, not two separate documents that have to stay in sync
- A person sees the PDF, the recipient's software reads the XML embedded inside it
- For XRechnung, the standalone XML file is the legally operative document, and the PDF is a human readable copy: you can download the XML directly, not only as part of the hybrid


Checked in our build, against the same rules the recipient runs.
Every release runs three checks against the files our emitter produces, before that release ships.
- The pinned KoSIT rule set (validator-configuration-xrechnung v2026-01-31, XRechnung 3.0.2) checks the embedded XML data against the profile it claims to be
- Our own hybrid checks confirm the XML is embedded correctly: byte identical to the source, attached the way a hybrid requires, named the way the profile expects
- veraPDF confirms the resulting file conforms to PDF/A-3b. That is a separate, structural check: it has no opinion about whether the embedded XML means anything
- All three run in the build, on every release, not on each invoice you send
This is a gate on our emitter, in our build. It is not a certification of any one invoice.
What this changes on an invoice you send today.
Nothing you have to remember to do. The statutory rules that govern a German invoice apply the same way whether or not it happens to be an e-invoice.
- Applicability is derived per invoice, and you can override that call
- The invoice list marks exactly which documents are e-invoices
- Per line VAT and the EU reverse charge, derived automatically
- Kleinunternehmer treatment under § 19
- Corrections as a real Rechnungskorrektur, not a quiet second invoice
- Sequential numbering, retained the way § 14b requires
What Steerd does not do.
The same honesty as the rest of the site. Steerd produces the invoice; it is not an accounting suite.
Ready to send one that holds up?
Start free and put a real invoice through it today, or talk to sales if you want someone to walk you through it first.
30 days full features · No credit card