Invoicing software vendors
Check every invoice before it goes out. Your user sees an error they understand before the access point rejects the invoice.
Checks e-invoices against EN 16931 and the Croatian CIUS for Fiskalizacija 2.0, and explains each error in Croatian, Bosnian or Serbian.
The validator runs in your browser. The invoice is never uploaded.
ERROR BR-02 Račun mora sadržavati broj računa (BT-1). term: BT-1 · location: /Invoice
The EN 16931 rules exist only in English: "An Invoice shall have an Invoice number." verifaktura gives them in Croatian, Bosnian or Serbian, with the business term and where in the file it is.
Check every invoice before it goes out. Your user sees an error they understand before the access point rejects the invoice.
The same rules in tests, in CI and in production. UBL and CII.
Check incoming and outgoing e-invoices in the browser. Nothing to install.
We will let you know when the API is ready and send you a trial key.
Two ways today: the free validator in your browser, or the open-source library for Node (npm install verifaktura, no Java). An API for systems that do not run Node is coming.
Yes. The browser validator and the library are free and stay free.
No. The validator runs in your browser; the XML never leaves your machine.
EN 16931 in UBL 2.1 and CII D16B, plus the Croatian CIUS with extensions for Fiskalizacija 2.0. Serbia (SEF) and Bosnia and Herzegovina profiles follow.
The Croatian Tax Administration published a new validator on 13 March 2026, in force from the 15th. Anyone who had copied the rules into their own code was out of date that day. verifaktura uses the official CEN/TC 434 and Tax Administration rules and tells you when a new version is out.
We send trial keys by hand, in the order people join the waitlist. Tell us what you would use it for when you sign up.
The core, the national profiles and the message translations are Apache-2.0 on GitHub. The hosted API will be paid.