Validnorm

One check · Every rule

How it works

Three steps to a checked invoice.

  1. 01

    Pick the country

    Type where the invoice goes. You see the law, the format and the deadline.

  2. 02

    Drop the invoice

    XML in UBL or CII, or a ZUGFeRD / Factur-X PDF. Up to 5 MB, processed in memory.

  3. 03

    Get the verdict

    The official KoSIT validator checks every rule. Every error comes with its field.

What a check does

  1. 01StructureThe XML is read against the UBL 2.1 or UN/CEFACT CII D16B schema.
  2. 02EN 16931 rulesBusiness rules of the European standard: mandatory fields, VAT categories, totals that add up.
  3. 03National rulesFor Germany, the XRechnung 3.0.2 rules on top, as published by KoSIT.
  4. 04VerdictThe official KoSIT validator decides. You get the same answer the German reference gives.

Free check

Check an invoice — free

  • XML in UBL or CII, or a ZUGFeRD / Factur-X PDF
  • Up to 5 MB per file
  • 30 documents a month without sign-up
Drop an invoice here or choose a file XML or PDF · max. 5 MB

Files are processed in memory and not stored. Privacy

What we check against

  • KoSITvalidator 1.6.3
  • XRechnung3.0.2
  • EN 16931UBL 2.1 · CII D16B
  • ZUGFeRD / Factur-XEN16931 profile

One check against the official rule sets: structure, EN 16931 and the national rules on top.

Start free. Pay when it becomes routine.

30 documents a month cost nothing and need no account. Paid plans start at €12 a month.

See all prices
  • Starter€121,000 documents / month
  • Pro€295,000 documents / month
  • Business€7920,000 documents / month
  • Unlimited€299fair use

Prices excl. VAT. EU businesses with a VAT ID: reverse charge. For businesses only.

Questions, answered plainly

Which countries can Validnorm check today?

Germany fully: XRechnung 3.0.2 and ZUGFeRD / Factur-X with the EN16931 and XRECHNUNG profiles. Any invoice following the European standard EN 16931 in UBL or CII. France partly: Factur-X with the EN16931 profile, without the rules of the French platforms. For every other country the site explains the law, and Validnorm does not check those formats yet.

Do you keep my invoice?

No. Uploaded files are processed in memory and discarded after the check. One exception applies to the API: if generating an invoice fails, the first three validator messages are kept to analyse the error.

Does a valid result mean my invoice is tax-compliant?

No. A valid result means the file meets the format and the business rules of the standard. Whether the content is right (amounts, VAT treatment, the customer's details) stays your responsibility. This site is information, not legal or tax advice.

Do I need an account?

Not for the free plan: 30 documents a month, no sign-up. One document is one check or one generated invoice.

Is there an API?

Yes. The same engine is available as an HTTP API for checking, generating and parsing invoices. The documentation currently lives on xrechnung.dev.

Who is behind Validnorm?

Maksim Scerba, a developer in Esslingen, Germany, who runs xrechnung.dev. Validnorm is its international home: same engine, same account.