01 โ Three languages, one format
The invoice does not care which language you work in
An invoice received over Peppol is UBL โ XML whose fields are defined by EN 16931. The field names are in the standard, not in French, German or English, which is exactly why a mixed-language office can put every supplier through the same pipeline. A folder holding a Peppol invoice from Brussels, a Factur-X PDF from Paris and an XRechnung from Trier comes out as one table.
The interface itself is available in nine languages, including French and German โ the reading is the same either way.
02 โ What gets checked
Arithmetic, not opinion
Every invoice is held against the EN 16931 rules, listed by number. On top of that, two things can be settled offline because the numbers carry their own check digits: the IBAN (ISO 13616, mod 97-10) and the VAT identifiers of several member states.
Where a check digit cannot be computed โ Luxembourg's VAT number among them โ nothing is claimed. A correct number reported as wrong costs more than no check at all: it teaches people to ignore the red marks.
Cross-border is the normal case here
A company in Luxembourg routinely receives invoices from Belgium, France and Germany in the same week. They arrive as Peppol UBL, Factur-X and XRechnung respectively โ three names for documents that share the same semantic standard. They are read together, and totals are grouped by currency rather than added across one.
Trying it
Drop files on the main page โ up to 10 invoices per export and 20 a day, free, no account, and the count resets at midnight. Pro lifts both limits for 29 โฌ once, with no renewal. To inspect a single file there is the check page.
Nothing is uploaded
The files are read in the browser. There is no server they could go to, and that is checkable in two minutes: open the developer tools, the Network tab, and drop an invoice in โ no request goes out. Or load the page, disconnect the network, and drop it anyway. It still works.
The neighbouring tools work the same way: checking one invoice against EN 16931, checking a payment file before the bank sees it, and opening a CAMT.053 or MT940 statement.