Pre-validated against the official EN 16931 rules. Generate and convert between UBL 2.1, UN/CEFACT CII, XRechnung 3.0, and Factur-X with a single REST call — every document checked against its target format's official rules before it's ever returned. No enterprise sales call required.
Free tier: unlimited validation, forever, plus UBL 2.1 generation. CII, XRechnung & Factur-X on Pro and above.
This is the real validation engine — the same one behind the API. Edit the sample, break a total, remove a field, and watch the EN 16931 rules fire.
Runs the real engine. No API key needed. Limited requests per hour.
Specification identifier, invoice number, issue date, type code, currency, seller and buyer identity, and at least one invoice line — the mandatory EN 16931 terms.
Line totals, allowances and charges, VAT breakdown, and the amount due for payment — the arithmetic rules that cause most real-world tax-authority rejections.
ISO 4217 currency codes, ISO 8601 dates, and well-formedness — with the document profile (e.g. XRechnung, Peppol BIS) detected and reported back.
Mandatory structured e-invoicing is rolling out across the EU. Every B2B invoice will have to be machine-valid. “Live” means the mandate is already in force; the rest are upcoming deadlines. InvoiceHub validates against EN 16931 — the standard all of these national formats derive from — so you build the compliance check in once. Read the full EU mandate guide →
| Jurisdiction | Timeline | Format |
|---|---|---|
| 🇷🇴 Romania | Live | RO e-Factura — mandatory B2B |
| 🇮🇹 Italy | Live | FatturaPA via SdI |
| 🇵🇱 Poland | 2026 | KSeF structured invoices |
| 🇧🇪 Belgium | 2026 | Peppol BIS for B2B |
| 🇫🇷 France | 2026–27 | Factur-X / UBL / CII, phased |
| 🇩🇪 Germany | 2025–28 | XRechnung / ZUGFeRD, phased |
| 🇪🇺 EU-wide | 2030 | ViDA — EN 16931 baseline |
Dates summarise publicly announced member-state timelines and may be phased by company size; always confirm against the relevant tax authority.
curl -X POST https://api.invoicehub.dev/api/v1/validate \
-H "Authorization: Bearer ih_live_xxx" \
-H "Content-Type: application/xml" \
--data-binary @invoice.xml
# → { "report": { "valid": true, "format": "UBL_2.1",
# "profile": "EN 16931 (CustomizationID: urn:cen.eu:en16931:2017)", "errors": [] } }Unlimited free validation, forever. Upgrade for format coverage and document volume.
For evaluation & development
For production workloads
For high-volume platforms
Custom volume & SLA