Standard
EN 16931
Definition
EN 16931 is the European standard that defines the semantic data model of a core invoice. It specifies the mandatory and optional fields (Business Terms), their meaning, and the validation rules that apply to all conforming electronic invoices in the EU. Nationally implemented standards such as XRechnung, ZUGFeRD (EN 16931 profile), and Factur-X must comply with this standard.
Background & context
EN 16931 was created in response to EU Directive 2014/55/EU, which aimed to harmonise electronic invoicing in public procurement. The standard defines only the semantic data model of the 'core invoice' — i.e. which information an invoice contains and what it means, but not the concrete file format. Each data element is defined as a Business Term (BT-x) with a unique number, meaning, data type and cardinality; related BTs are bundled into Business Groups (BG-x). The standard also defines around 200 business rules (BR-x) that check arithmetic consistency (e.g. that line totals equal the invoice grand total) and logical conditions. EN 16931 permits exactly two syntaxes for technical implementation: UBL 2.1 (OASIS) and UN/CEFACT CII. National specifications such as XRechnung (CIUS) may restrict the standard and add national rules (BR-DE) but must not contradict it. Validation is two-stage: first the XSD schema check, then the content-level Schematron check of the business rules.
In practice — a worked example
A piece of software is to check whether an invoice is EN 16931-compliant. It checks, for example, rule BR-CO-15: the invoice grand total with VAT (BT-112) must exactly equal the net total (BT-109) plus the total VAT amount (BT-110). For an invoice of €1,000 net + €190 VAT, BT-112 must therefore be €1,190 — a deviation of even one cent leads to rejection. At the same time, the standard checks that mandatory fields such as the invoice number (BT-1, rule BR-1) and invoice date (BT-2, rule BR-2) are present. Only when all BR rules are satisfied is the document considered compliant.
Common mistakes
- •EN 16931 is not a file format — you cannot create an 'EN 16931 file', only a UBL or CII file that conforms to the standard.
- •Rounding errors: the standard requires rounding per VAT category, not on the grand total — otherwise BR-CO rules fail.
- •National CIUS such as XRechnung tighten the standard; a generically EN 16931-compliant document is not automatically XRechnung-compliant (BR-DE rules).
Frequently asked questions
Is EN 16931 a mandatory standard?
For electronic invoices to public buyers in the EU, EN 16931 compliance is mandatory (Directive 2014/55/EU). In Germany, the Growth Opportunities Act additionally requires EN 16931-compliant e-invoices in domestic B2B from 2025.
What is the difference between EN 16931 and XRechnung?
EN 16931 is the European base standard. XRechnung is a German CIUS that specialises it: it makes certain fields mandatory and adds German business rules (BR-DE). Every XRechnung is EN 16931-compliant, but not every EN 16931 invoice is an XRechnung.
How many business rules are there?
EN 16931 defines around 200 business rules (BR-, BR-CO-, BR-S-, BR-Z- etc.) that are checked via Schematron. National extensions such as XRechnung add further (BR-DE) rules.