Validate an invoice against EN 16931
Drop the file before you send it. The rules a receiver actually rejects an invoice for are checked here, and every finding is written out with the figures from your own file.
- Free, unlimited use
- No account required
- Files stay in your browser
| # | Description | Qty | Unit | Unit price | VAT % | Net amount |
|---|
| Category | Rate | Taxable base | VAT amount |
|---|
| # | Qualifier | Reference | Amount | Paid |
|---|
| Segment | Element | Value |
|---|
What the check says, and what it does not certify
A receiver does not reject an invoice for looking wrong, it rejects it because a schematron rule failed, and what comes back is a code: BR-CO-15, with not one number in it. The same rule reads here as “Total without VAT 250.00 plus VAT 41.50 is 291.50, but the total with VAT states 300.00”. Two limits, said plainly: this is a subset of the roughly 200 schematron rules and not a conformance certificate, and it refuses to judge a file that is neither UBL nor CII, because running an invoice rule against a purchase order produces confident nonsense.
What you get out
- The mandatory fields: specification identifier, number, date, type, currency, seller, buyer, address and country code
- All four required totals, even where they are equal, and the arithmetic that ties them together
- Total without VAT against the sum of the lines, VAT against its base, amount due against any prepayment
- The VAT breakdown: category, rate, taxable base per rate, and whether the lines agree with it
- The zero-rated, exempt, reverse charge, intra-community and export categories
- The country prefix on a VAT identifier, an IBAN where money is due, and dates in the right order
Questions
Is this a conformance certificate?
No, and the card says so where the result appears. It checks the rules that fail in practice, not the full schematron. An invoice that passes here can still be refused for a rule this page does not cover.
Does my invoice get uploaded?
No. The file is read in this tab, by your browser, and never leaves your machine. That is the structural difference from a server-side validator, and on a document carrying your customers and your figures it is the whole point.
Which files are checked?
UBL 2.1 and UN/CEFACT CII, which covers XRechnung, Peppol BIS Billing 3.0 and the XML carried inside a Factur-X or ZUGFeRD PDF. Other formats are still read and displayed, but EN 16931 does not govern them, so the check card disappears instead of inventing errors.
What does BR-CO-15 actually mean?
That the total with VAT has to be exactly the total without VAT plus the VAT. It is the rule that fails most often, almost always because rounding was done per line on one side and on the total on the other. The message names all four amounts, so the gap is visible without opening the XML.
Can I read the findings in another language?
Yes. The same check runs on the localised pages and speaks their language: French on valider une facture électronique, German on the /de pages, Italian on /it. The rules and the verdict are identical, only the sentences change.