1. OkInvoice
  2. Guides
  3. Methodology

Methodology

How OkInvoice checks facts, validates invoices and reviews software

How OkInvoice checks e-invoicing rules against primary sources, how its validator works and where it stops, how software is reviewed and how we correct errors.

Last checked: 4 min read5 official sources

In short

  1. Every rule on the site comes from a primary source, such as a law, an official FAQ or an administrative letter, with the date we checked it.
  2. Where only vendor or press sources exist, we say 'reportedly'. Where the law is unclear, we say so and suggest a tax adviser.
  3. The validator runs the official CEN EN 16931, KoSIT XRechnung and OpenPEPPOL rules in your browser. It does not run XSD or full PDF/A checks, and has no French CIUS rules yet.
  4. Software comparisons list only what vendors document, mark the rest as unverified and are never ranked by commission.
  5. Report an error through the contact page and we correct it and update the date on the page.

E-invoicing rules carry fines, input VAT risk and hard deadlines, so the facts on this site have to be right and traceable. This page explains how we research and check them, how our validator works and where it stops, how we review software and what happens when we get something wrong.

How we check the rules

Primary sources first

Every deadline, threshold, amount and exemption on OkInvoice comes from a primary source:

  • Germany: the VAT Act and its implementing ordinance on gesetze-im-internet.de, the finance ministry (BMF) FAQ, and the BMF letters of 15 October 2024, 15 October 2025 and 15 October 2026.
  • France: impots.gouv.fr and the DGFiP FAQs and guides, the BOFiP tax doctrine, Légifrance and Entreprendre Service Public, including the 2026 finance law (loi n° 2026-103).
  • Belgium: the FPS Finance and FPS BOSA e-invoicing portals (efacture.belgium.be, einvoice.belgium.be) and the Moniteur belge, including the law of 10 February 2026.
  • EU: the European Commission's pages on VAT in the Digital Age (ViDA).
  • Formats: KoSIT for XRechnung, FeRD and FNFE-MPE for ZUGFeRD and Factur-X, and OpenPeppol for Peppol.

For each fact we keep the exact quote and the date we fetched the source. Each page lists its official sources at the end and shows the date its facts were last checked.

When sources are weaker

Some facts have no official page we could reach. The shutdown of Belgium's Hermes service, for example, is reported only by vendors and advisory firms. In those cases we write "reportedly" and name the kind of source. Draft laws, such as Belgium's planned e-reporting from 2028, are always described as drafts until they are enacted.

Where the law itself is unclear, we say so. One example is German supplies made in December 2026 but invoiced in January 2027, which the transitional rule's wording does not clearly cover. For such cases we point you to a tax adviser instead of guessing.

How often we re-check

Every page carries an "updated" date. We re-check deadlines, thresholds and penalties:

  • before every content update to a page
  • whenever an authority publishes a new law, administrative letter or FAQ version
  • for the open points we track, such as calls in Germany to delay the 2027 stage, a possible French decree on the SME date, and Belgium's e-reporting bill, before each update until they are settled

The requirements checker and the deadline overview use the same checked data as the guides.

How the validator works

The validator runs entirely in your browser. Files are never uploaded to our servers.

What it runs

  • CEN EN 16931 validation artefacts 1.3.17, for both UBL and CII syntax
  • KoSIT XRechnung Schematron 2.6.0, for XRechnung 3.0.2
  • OpenPEPPOL BIS Billing 3.0.22 rules, for Peppol invoices and credit notes

The validator detects the syntax and the declared specification and applies the matching rule sets. For ZUGFeRD and Factur-X PDFs, it extracts the embedded XML (an attachment named factur-x.xml, zugferd-invoice.xml or xrechnung.xml) and reads the profile declared in the PDF's XMP metadata.

We test it against the official unit tests published by CEN and OpenPEPPOL and against the KoSIT test suite, to confirm it returns the expected result for each test file.

What it does not do

  • No XML schema (XSD) validation. A file can be malformed in ways only a schema check would catch.
  • No full PDF/A validation. It does not check PDF/A-3 conformance the way a tool such as veraPDF does.
  • No French CIUS rules yet. French files are checked against EN 16931 only.
  • No tax judgement. A file can pass every rule and still have the wrong VAT rate, the wrong customer or the wrong amount.

A clean result means the invoice follows the official business rules we run. It is not a certificate of legal compliance.

How we review software

Our comparisons for Germany, France and Belgium follow the same rules:

  • Vendor documentation and official lists. We record what each vendor documents about formats (XRechnung, ZUGFeRD, Factur-X, Peppol), sending and receiving, and free plans, with the source page and the date checked. For France we match platform status against the DGFiP list of approved platforms.
  • Unverified means unverified. If a vendor does not document a feature, we write "not documented" or "unverified", not "no".
  • Prices only from the vendor, dated "(as of Nov 2026)" or the relevant month.
  • No hands-on scoring yet. We do not currently run lab tests of each product, and we say so instead of inventing scores. We suggest you test any tool's output with the validator.
  • Commission does not set the order. Some vendors pay us through affiliate programmes, as explained on our about page. We never rank by commission, and we list free options that earn us nothing.

Corrections policy

If you spot an error, a rule that has changed or an outdated price, please tell us through the contact page with a link to the source if you have one. We check the report against the primary source. If we were wrong, we correct the page and update its date. Where a correction changes a deadline, amount or recommendation, we say on the page what changed.

Nothing on OkInvoice is legal or tax advice. For decisions with real money at stake, use the official sources we cite and a qualified adviser.

Questions people ask

Where do OkInvoice's facts come from?

From primary sources: German law on gesetze-im-internet.de and the BMF, the DGFiP and BOFiP in France, the Belgian FPS Finance and Moniteur belge, and the European Commission. Each page lists its sources.

How often are the pages checked?

Each page shows the date its facts were last checked. We re-check deadlines and penalties before every content update and whenever an authority publishes a new law, letter or FAQ.

Does the validator upload my invoice?

No. The validation rules run in your browser, and the file never leaves your device.

Can a file pass the validator and still be wrong?

Yes. The validator checks structure and business rules, not whether the VAT treatment or the amounts are right for your transaction. It also skips XML schema checks, full PDF/A checks and French-specific rules.

Official sources

  1. BMF: Fragen und Antworten zur Einführung der obligatorischen E-Rechnung bundesfinanzministerium.de
  2. DGFiP: FAQ J'approfondis la facturation électronique impots.gouv.fr
  3. FPS Finance / BOSA: Questions générales sur l'obligation B2B efacture.belgium.be
  4. KoSIT / xeinkauf.de: XRechnung versions and bundles xeinkauf.de
  5. OpenPeppol: Peppol BIS Billing 3.0 documentation docs.peppol.eu

General information, not tax or legal advice. Check edge cases with a tax adviser.