Check your e-invoice before your customer's software rejects it.
Upload an invoice file. Get rule-level validation against the official EN 16931, Peppol BIS 3.0, XRechnung 3.x and Factur-X rulesets. No login. No storage.
🇫🇷 France: Since 1 September 2026, every French business must be able to receive compliant e-invoices.
Drop your invoice XML or PDF here
or click to choose a file — .xml (UBL / CII / XRechnung) or Factur-X PDF
Files are validated in memory and discarded. Nothing is stored, logged, or kept.
Pricing
Free
€0
Web validator, unlimited files, every format above. No account needed.
Monthly subscriptions, billed in euros excluding tax. Tax is calculated at checkout.
API
Same engine, for your pipeline. One key, three endpoints.
| Endpoint | What it does |
|---|---|
POST /v1/validate | Validate XML or Factur-X PDF; returns rule-level errors with ids like BR-S-08 |
POST /v1/convert?target=… | Convert between UBL, CII, JSON and Factur-X |
GET /v1/formats | List supported formats and profiles |
curl -X POST https://billxml.com/v1/validate \
-H "Authorization: Bearer bx_YOUR_KEY" \
-H "Content-Type: application/xml" \
--data-binary @invoice.xml
Full spec: openapi.json. Docs: API reference.
What we check
| Ruleset | Version | Covers |
|---|---|---|
| EN 16931 (CII + UBL) | 1.3.16 | Core EU semantic rules |
| Peppol BIS 3.0 | current | Peppol-specific constraints + CEN layer |
| XRechnung | 3.0.2 | German federal profile (KoSIT) |
| Factur-X / ZUGFeRD | — | PDF/A-3 embedded CII, French/German hybrid |