Find out exactly why an e‑invoice fails EN 16931
Drop a Factur-X, XRechnung, UBL or CII invoice and run it through the same official rule set a receiving platform checks it against: EN 16931 schematron plus the profile's own rules. Every failure comes back with its BT reference and a plain explanation.
curl https://api.einvoicekit.com/v1/validate \
-H "Authorization: Bearer eik_live_..." \
-F "file=@invoice.pdf" This page runs the exact endpoint your own code would call.
Drop an invoice here or click to choose a file
.xml (UBL, CII, XRechnung) or .pdf (Factur-X / ZUGFeRD). Checked against the full official rule set, never stored.
Files are processed in memory to produce the verdict, then dropped. Nothing is stored, and no account is needed to use this page.
What gets checked
Every run here is the full official rule set, never a preview of it:
Validating a French invoice from your own code? Add the BR-FR rules FNFE-MPE publishes for the mandate with target=france, documented on the API page.
Free API key
100 validations plus 20 generated invoices a month, forever. No card.
Get your free API key