Page tree

eInvoicing Documentation

Validations

The European eInvoicing standard is a semantic specification for the content of an invoice that is then bound to several syntaxes, see Explaining the EN. When an invoice document is created in a particular syntax that syntax message must comply with the Semantic specifications of the EN and to the syntax binding for the relevant syntax.

To assist with testing whether individual electronic invoices comply with the standard a set of validation artefacts has been created. The validation artefacts are not part of the eInvoicing Standard but a technical expression of the standard that allow its users to easily validate whether invoices comply to the standards specifications.

As analogy, a meter as a measure of length is defined in terms of light waves in vacuum. A common one meter measuring stick is a technical expression of this actual definition and allows its user to validate whether an object is one meter long in a simpler and more practical way than applying the actual definition. The measuring stick is however an approximation and it may be improved over time with better materials and design to better express the actual definition but it does not itself become the definition. The relationship between the eInvoicing standard and the validation artefacts is similar except that the validation artefacts do not validate all aspects of the eInvoicing standard. Compliance to the eInvoicing standard is measured at two levels, the invoice message itself and the processing of the invoice message. The validation artefacts only validate the invoice message instance. For the processing a user must refer to the eInvoicing standard documentation.

The validation artefacts have been developed by a group of experts in association with CEN and CEF. These artefacts are distributed under open source licensing through a GitHub repository at the following location.

https://github.com/ConnectingEurope/eInvoicing-EN16931/releases

You should register on the dedicated page in the eInvoicing User Community to receive email notifications for each update.


NOTE: To avoid inconsistency it is strongly recommended that those implementing the eInvoicing Standard use these validation artefacts rather than building their own directly from the standards specifications. And if building their own, e.g. with different technology, then to use these as benchmark.

These validation artefacts can be used directly in implementations or through several validation platforms that are publicly available.

Comments and questions regarding these validation artefacts can be directed to CEF eInvoicing Support.

These validation artefacts are built by using Schematron, which is a rule-based validation language for making assertions about the presence or absence of patterns in an XML tree. Schematron is a publicly available ISO standard (ISO/IEC 19757-3:2016) that may be used free of charge. The main advantage, as compared to using Schemas, is that Schematron's can express rules that concern relations between different elements in an invoice message. Rules such as calculations and conditional values. Like Schemas, Schematrons can be used for validate the cardinality and values of individual elements. This allows Schematrons to be used to express all rules of the semantic eInvoicing standard that concern the invoice instance. Schematron can however not validate the syntax structure of a message. It is therefore recommended to use the Schematron artefacts in conjunction with the relevant syntax schema as published by its governing organisation. Links to those can be found in the GitHub repository.