Germany e-invoicing API
Send German e-invoices through the Complyance API, and find out when German businesses need structured e-invoices. Check the buyer's requirements before choosing a format or delivery route.
Which rules apply?
For domestic business-to-business (B2B) transactions, Germany requires an e-invoice with structured data that can be processed electronically. A PDF alone is not an e-invoice. EN 16931 is the European invoice standard; XRechnung is a German XML implementation used especially for invoices to public authorities. A compliant ZUGFeRD invoice is another possible format under German tax rules. Do not assume every German buyer requires XRechnung.
The German Federal Ministry of Finance’s e-invoicing FAQ distinguishes the B2B rules from separate business-to-government (B2G) requirements:
| Date | Domestic B2B requirement |
|---|---|
| 1 January 2025 | German businesses must be able to receive e-invoices. An email inbox is sufficient for receipt. |
| Through 31 December 2026 | Issuers may generally continue to use paper invoices, or another electronic format such as a PDF with the recipient’s consent. |
| During 2027 | The same issuing transition continues for businesses with prior-year turnover of up to €800,000. A separate transition for certain EDI invoices also runs through 2027. |
| From 1 January 2028 | The issuing transitions end for qualifying domestic B2B transactions. |
These rules do not apply to every invoice: consumer sales, some tax-exempt supplies and invoices up to €250 gross are examples of exceptions. Check the ministry’s exceptions and transition rules for your transaction. Invoices to public authorities have separate rules; ask the authority which format and delivery channel it accepts.
Send a German invoice
For a company onboarded in Germany, send a GETS invoice with country: "DE" to Unify. GETS is the standard invoice payload you send to Complyance. Include the German fields required for the document type and use the Germany examples to prepare your request. A successful HTTP 200 means the document passed validation and was stored; it does not by itself prove delivery. The response includes generated e-invoice XML in Base64XML when available. Keep the returned documentId and check its status. When your sandbox results are correct, follow the Germany go-live checklist.
For a public-sector buyer, ask for the buyer’s Leitweg-ID, a routing reference placed in the invoice’s buyer reference (BT-10). It is not your company’s registration number, and a domestic B2B buyer does not generally need one. See onboarding before sending and validation rules if your invoice is rejected.
For the current XRechnung specification, consult KoSIT’s XRechnung publication; the applicable format and channel for a public authority depend on the recipient.
Last updated