XRechnung 3.0.2 Beta
German public sector and German B2B. UBL syntax, KoSIT rules.
Beta · XRechnung 3.0.2 · Peppol BIS 3.0.21
Send a simple JSON invoice, get XRechnung or Peppol BIS back — checked against the official rules before it reaches you. Built for small software teams facing the EU e-invoicing deadlines.
$ curl -X POST /v1/invoices \
-H 'X-Accept-Terms: 1.0' \
-H 'Content-Type: application/json' \
-d '{"format": "peppol-bis-ubl", "invoice": {…}}'
HTTP/1.1 200 OK
Content-Type: application/xml
X-Validation-Status: valid
X-Rule-Set: peppol-bis-3.0.21-ubl-invoice
<Invoice xmlns="urn:oasis:…:Invoice-2">…
| Country | Requirement | Date | Supported format |
|---|---|---|---|
| Belgium | B2B e-invoices via Peppol | Since 1 Jan 2026 | Peppol BIS Available |
| Germany | Receive e-invoices; issue them (turnover over €800k first, then everyone) | Receive since 2025 · issue 2027 / 2028 | XRechnung Available ZUGFeRD Coming |
| France | Everyone receives e-invoices; large and mid-sized companies (ETI) issue them first, small businesses a year later. Sent through an approved platform (PA) | Receive and issue (large, mid-sized) Sept 2026 · issue (small) Sept 2027 | Factur-X Coming |
| Norway | B2B e-invoices (EHF = Peppol BIS) | 1 Jan 2027 | Peppol BIS (EHF) Available |
| Slovakia | B2B and public-sector e-invoices via Peppol | 1 Jan 2027 | Peppol BIS Available |
| Austria | Invoices to the federal government | Since 2014 | Peppol BIS Available |
| Switzerland | Invoices to the federal administration over CHF 5,000 | Since 2016 | Peppol BIS Available |
| Denmark, Sweden, Malta | Invoices to the public sector | Already in place | Peppol BIS Available |
| United Kingdom | All VAT invoices via Peppol | 1 Apr 2029 | Peppol BIS Coming |
| Spain | B2B e-invoices (turnover over €8M first, then everyone) | Oct 2027 · Oct 2028 | Spanish format Coming |
| EU-wide (ViDA) | Cross-border B2B invoices between EU countries | 1 Jul 2030 | EN 16931 Coming |
Status October 2026, from public sources; check the official tax-authority pages for your case. This is not legal or tax advice.
Seller, buyer, lines, VAT. Field names follow the EU standard EN 16931, without XML jargon.
Line totals, VAT per rate and document totals with the official rounding rules. Send your own totals and we tell you if they differ.
Each invoice passes the official rules of its format before we return it. Errors come back with the field path and the rule, in plain words.
German public sector and German B2B. UBL syntax, KoSIT rules.
Belgium, Norway, Slovakia, Denmark, Sweden, Austria, Switzerland, Malta and any buyer on the Peppol network. OpenPeppol rules.
PDF with embedded XML for Germany and France.
Paste or upload an XRechnung or Peppol BIS invoice. We check it against the official rules and list every problem with its rule and location.
Your file is processed in memory and not stored.
The check applies the official rules as published. It can't guarantee that a recipient accepts the invoice, and it isn't tax or legal advice.
The result appears here.
All formats in every plan. No setup fee.
€0/ month
€29/ month
€99/ month
€299/ month
For business customers only. Prices in EUR, excluding VAT. Annual plans: two months free. Paid plans open after the beta — write to us for early access.
We're onboarding a few software teams now. Tell us about your product and how you invoice today, and we'll set you up with a free beta key.
Write to us or email hello@bmk-hub.com
Yes. Every invoice we generate passes validation against the EN 16931 rules (CEN) and the rules of its format — the KoSIT rules for XRechnung, the OpenPeppol rules for Peppol BIS, in the versions listed at /v1/formats — before we return it; if it doesn't, you get the errors instead of a file. Passing validation doesn't guarantee that a recipient or platform accepts the invoice, and you remain responsible for its tax content.
No. Invoices you create and files you validate are processed in memory and not stored.
Not yet. We create and validate the documents; delivery through a Peppol access point is planned with a partner.
Anything that can send an HTTP request. A Kotlin Multiplatform SDK (JVM, Android, iOS, JavaScript) is in the works, and there is a Python example.
XRechnung is a pure XML invoice that follows the German rules on top of EN 16931, and the standard for invoices to German public-sector buyers. ZUGFeRD is a PDF with the invoice XML embedded; from the EN 16931 profile upwards it also counts as an e-invoice for German B2B. Valinvo creates XRechnung today; ZUGFeRD / Factur-X is coming.
Yes. The online validator on this page is free and needs no account or API key. Your file is processed in memory and not stored. You can also try the API without a key, with a small daily limit.