Skip to content
EN

EN 16931: The European E-Invoicing Standard Explained

Short answer: EN 16931 is the European standard for e-invoices. It isn’t a file format. It’s a data model: a numbered list of business terms (invoice number BT-1, issue date BT-2, seller VAT number BT-31 and so on) plus rules on how they fit together, which can be written in two XML syntaxes, UBL and CII. National formats such as XRechnung, ZUGFeRD, Factur-X and Peppol BIS Billing 3.0 are versions of it with extra national rules. It started as the standard for invoicing EU public bodies, and under ViDA it becomes the reference for all EU e-invoices from 1 July 2030.

This guide is for anyone who keeps seeing “EN 16931-compliant” in software specs and tenders, and for developers who need to know what’s inside an e-invoice. For which countries require e-invoicing and when, see the EU e-invoicing overview.

What it isThe European standard on electronic invoicing: a semantic data model plus a list of approved syntaxes
Written byCEN (European Committee for Standardization), technical committee CEN/TC 434
Legal basisDirective 2014/55/EU on e-invoicing in public procurement
EditionsEN 16931-1:2017 (amended 2019). EN 16931-1:2026 approved in March 2026. The 2017 edition stays compliant during a migration period
SyntaxesUBL 2.1 (ISO/IEC 19845) and UN/CEFACT CII (D16B), listed in Implementing Decision (EU) 2017/1870
SizeAround 160 business terms in the 2017 model, grouped into business groups (BG)
Built on itXRechnung, ZUGFeRD and Factur-X, Peppol BIS Billing 3.0, the French reform’s formats, Italy’s CIUS-IT
Under ViDAThe reference format for EU e-invoices from 1 July 2030
Free copy?Parts 1 and 2 are free through your national standards body, under a licence paid for by the Commission
Your situationWhat EN 16931 means for you
A customer or tender asks for an “EN 16931-compliant e-invoice”Send a structured e-invoice in a format built on it, for example XRechnung or ZUGFeRD in Germany, or Peppol BIS in Belgium. A PDF is not enough
You invoice EU public bodiesThey must accept EN 16931 invoices. Many countries also require suppliers to send them, usually in a national CIUS
You invoice German or French businessesTheir mandates are built on EN 16931. See Germany and France
You sell B2B across EU bordersFrom 1 July 2030 under ViDA, cross-border B2B invoices must be EN 16931 e-invoices with digital reporting
You’re a developer building invoicingModel your invoice data on the business terms below. Every European format maps back to them
You sell only to consumersMostly not relevant. B2C invoices are outside nearly every e-invoicing mandate

The semantic model: business terms and groups

Section titled “The semantic model: business terms and groups”

The heart of EN 16931 is Part 1, the semantic data model. “Semantic” means it defines meaning, not file layout. Each piece of information has:

  • An ID: BT- for a business term (one value, like the invoice number) or BG- for a business group (a block of related terms, like the seller’s address).
  • A name and definition, for example BT-1 “Invoice number: a unique identification of the invoice”.
  • A cardinality: 1..1 means exactly one, mandatory. 0..1 means optional. 1..n means at least one, repeatable.
  • Business rules that link terms together, coded BR- (general), BR-CO- (calculations and conditions) and BR-S-, BR-AE- and so on for each VAT category.

So “BT-31” means the same thing in a German XRechnung, a French Factur-X and a Belgian Peppol invoice: the seller’s VAT number. That shared vocabulary is what lets software read invoices from anywhere.

These are the terms almost every invoice carries. Numbering and rules are from the 2017 model, which is what nearly all invoices in circulation use today. Rule IDs are from the official EN 16931 validation artefacts.

IDBusiness termRequired?Rule
BT-1Invoice numberAlwaysBR-02
BT-2Invoice issue dateAlwaysBR-03
BT-3Invoice type code (380 invoice, 381 credit note)AlwaysBR-04
BT-5Invoice currency codeAlwaysBR-05
BT-9Payment due dateOptional in the core rules. Peppol BIS requires it or payment terms (BT-20) when an amount is due
BT-10Buyer referenceOptional in the standard. Mandatory in XRechnung (Leitweg-ID)BR-DE-15
BT-24Specification identifier (which standard or CIUS the invoice follows)AlwaysBR-01
BT-27Seller nameAlwaysBR-06
BG-5 / BT-40Seller postal address / seller country codeAlwaysBR-08, BR-09
BT-31Seller VAT identifierWhen charging VAT (or BT-32 or BT-63 instead)BR-S-02
BT-44Buyer nameAlwaysBR-07
BG-8 / BT-55Buyer postal address / buyer country codeAlwaysBR-10, BR-11
BT-48Buyer VAT identifierFor reverse charge and intra-EU supplies of goodsBR-AE-02, BR-IC-02
BT-106Sum of invoice line net amountsAlwaysBR-12
BT-109Invoice total without VATAlwaysBR-13
BT-110Invoice total VAT amountWhen VAT is chargedBR-CO-15
BT-112Invoice total with VATAlwaysBR-14
BT-115Amount due for paymentAlwaysBR-15
BG-23VAT breakdown: taxable amount (BT-116), VAT amount (BT-117), category code (BT-118), rate (BT-119)At least oneBR-CO-18, BR-45 to BR-48
BG-25Invoice lineAt least oneBR-16
BT-126Invoice line identifierEvery lineBR-21
BT-129 / BT-130Invoiced quantity / unit of measureEvery lineBR-22, BR-23
BT-131Invoice line net amountEvery lineBR-24
BT-146Item net priceEvery lineBR-26
BT-151Item VAT category codeEvery lineBR-CO-04
BT-153Item nameEvery lineBR-25

Validators also check the arithmetic. For example, BR-CO-10 says BT-106 must equal the sum of all line amounts (BT-131), and BR-CO-15 says BT-112 must equal BT-109 plus BT-110.

Every line and every VAT breakdown has a VAT category code (BT-151 and BT-118). The choice triggers its own rules:

CodeMeaningTypical use
SStandard ratedMost domestic sales, at any non-zero rate (standard or reduced)
ZZero ratedGoods taxed at 0% where the country has a zero rate
EExempt from VATExempt services such as most financial and medical services. Needs an exemption reason
AEReverse chargeB2B services to another EU country. Needs the buyer’s VAT number and a “Reverse charge” reason
KIntra-community supplyB2B goods shipped to another EU country. Needs both VAT numbers
GExport outside the EUGoods exported to non-EU customers
OOutside the scope of VATTransactions not subject to VAT at all
L, MCanary Islands (IGIC), Ceuta and Melilla (IPSI)Spain’s special territories

A data model has to be written in some file format. EN 16931 allows two XML syntaxes, named in the Commission’s Implementing Decision (EU) 2017/1870:

UBL 2.1UN/CEFACT CII
Full nameUniversal Business Language, ISO/IEC 19845:2015Cross Industry Invoice, schema version 16B
FromOASISUN/CEFACT, the UN trade facilitation body
Used byPeppol BIS Billing 3.0, XRechnung (UBL), the French reform (UBL)ZUGFeRD and Factur-X, XRechnung (CII), the French reform (CII)

The same business term sits in a different place in each:

Business termUBLCII
BT-1 Invoice numbercbc:IDrsm:ExchangedDocument/ram:ID
BT-2 Issue datecbc:IssueDate as 2026-11-02ram:IssueDateTime/udt:DateTimeString as 20261102
BT-24 Specification identifiercbc:CustomizationIDram:GuidelineSpecifiedDocumentContextParameter/ram:ID
BT-31 Seller VAT identifiercac:PartyTaxScheme/cbc:CompanyIDram:SpecifiedTaxRegistration/ram:ID with schemeID="VA"
BT-112 Total with VATcac:LegalMonetaryTotal/cbc:TaxInclusiveAmountram:GrandTotalAmount

CEN also published a binding to the older EDIFACT INVOIC message (CEN/TS 16931-3-4), but it isn’t on the Commission’s list, so public bodies don’t have to accept it.

PartWhat it coversFree?
EN 16931-1The semantic data model (the business terms and rules)Yes
CEN/TS 16931-2The list of compliant syntaxesYes
CEN/TS 16931-3-1 to 3-4Syntax bindings: how each term maps to UBL, CII and EDIFACTSold by national standards bodies
CEN/TR 16931-4Interoperability at transmission levelSold
CEN/TR 16931-5How to build CIUS and extensionsSold
CEN/TR 16931-6Test results of the standard in practiceSold

Source: the European Commission’s page on obtaining a copy of the standard. For developers, the official business rules are also published free as schematron and XSLT files in the eInvoicing-EN16931 repository, currently version 1.3.17 (October 2026).

CIUS and extensions: how national formats are built

Section titled “CIUS and extensions: how national formats are built”

EN 16931 is deliberately general. Countries and sectors adapt it in two ways:

  • A CIUS (Core Invoice Usage Specification) restricts the standard: it makes optional fields mandatory, limits code lists or adds checks. Every CIUS invoice is still a valid EN 16931 invoice. Its BT-24 contains #compliant#.
  • An extension adds data the standard doesn’t have, such as extra parties or sub-lines. An extension invoice is conformant but not strictly compliant, so a receiver that only knows the core standard may ignore the extra data. Its BT-24 contains #conformant#.
SpecificationTypeWho uses itBT-24 identifier
XRechnungCIUSGerman public sector and B2Burn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0
Peppol BIS Billing 3.0CIUSThe Peppol network: Belgium, the Netherlands, the Nordics and many public bodiesurn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0
ZUGFeRD / Factur-X EN 16931 profileThe plain standard, in CII inside a PDFGerman and French B2Burn:cen.eu:en16931:2017
ZUGFeRD / Factur-X EXTENDEDExtensionComplex B2B billingurn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended
French reform: EN 16931 profileCIUS (French BR-FR rules)French B2B e-invoicingurn:cen.eu:en16931:2017, with French rules applied by the platforms
French reform: EXTENDED-CTC-FRExtensionFrench B2B cases the core can’t handleurn:cen.eu:en16931:2017#conformant#urn.cpro.gouv.fr:1p0:extended-ctc-fr
CIUS-ITCIUSEN 16931 invoices to Italian public bodies through SdIurn:cen.eu:en16931:2017#compliant#urn:fatturapa.gov.it:CIUS-IT:2.0.0

Italy’s FatturaPA is not built on EN 16931. It’s a national XML format that predates the standard and has its own structure. Italy meets the public procurement directive differently: its exchange system SdI accepts EN 16931 invoices in UBL or CII for public sector customers, following the Italian CIUS-IT rules in the Agenzia delle Entrate’s technical specifications, and converts them to FatturaPA internally. Domestic Italian B2B and B2C invoices still use FatturaPA. See E-invoicing in Italy.

Directive 2014/55/EU: where EN 16931 came from

Section titled “Directive 2014/55/EU: where EN 16931 came from”

The Directive 2014/55/EU of 16 April 2014 on electronic invoicing in public procurement asked CEN to write a European standard, so that a supplier in one country could invoice a public body in another without a different format for each.

DateMilestone
16 April 2014Directive 2014/55/EU adopted
28 June 2017CEN publishes EN 16931-1:2017 and CEN/TS 16931-2:2017
17 October 2017The Commission publishes the reference to the standard and its syntaxes in the Official Journal (Implementing Decision 2017/1870)
18 April 2019Central government bodies in every EU country must receive and process EN 16931 e-invoices
18 April 2020Deadline for sub-central bodies (regions, municipalities) in countries that used the extra year

The directive obliges public bodies to receive EN 16931 invoices. It doesn’t oblige suppliers to send them. Several countries added that themselves, for example Germany for federal suppliers from November 2020 and Italy through SdI. The Commission ran a public consultation on revising the directive from March to June 2026.

The 2017 model was designed for invoices to public bodies. With B2B mandates spreading and ViDA on the way, CEN revised it.

  • Approved in March 2026. CEN’s national members approved EN 16931-1:2026 unanimously (17 countries voted in favour, the rest abstained), and the definitive text went to national standards bodies on 18 March 2026, according to the European Commission’s announcement.
  • The 2017 edition is withdrawn but still compliant. The Commission’s eInvoicing pages say invoices following the 2017 edition remain compliant during a migration period. No end date has been set yet, and we couldn’t find the Official Journal reference to the 2026 edition published as of 26 October 2026.
  • What’s new. Reported changes include several orders and deliveries on one invoice, VAT exemption reasons for allowances and charges, VAT breakdowns split by exemption reason, a goods-or-services indicator, early-payment discounts and late-payment charges, and better support for special VAT schemes. KoSIT’s XRechnung 4.0 pre-release, built on the new model, adds more than 50 business terms.
  • Formats follow later. The syntax bindings and validation artefacts need updating first, then each national format. ZUGFeRD 2.5 and Factur-X 1.09 already added some 2026 features to their EXTENDED profile. XRechnung 4.0 is expected in spring 2027.

What to do now: nothing urgent. Keep issuing invoices in your current format and version. Ask your software provider when they plan to support the 2026-based versions, such as XRechnung 4.0.

ViDA: EN 16931 becomes the EU default in 2030

Section titled “ViDA: EN 16931 becomes the EU default in 2030”

The EU’s VAT in the Digital Age package, Directive (EU) 2025/516, gives EN 16931 a much bigger role. From 1 July 2030:

  • E-invoices must follow the European standard. The VAT Directive will refer to EN 16931 and its syntax list as the default for electronic invoices. Countries may still allow other formats for domestic sales.
  • Cross-border B2B invoices become EN 16931 e-invoices with digital reporting to the tax authorities, replacing EC Sales Lists.
  • No buyer consent is needed to send an EN 16931 e-invoice to a business.

The ViDA section of the EU overview has the full timeline. The practical message: if you invoice EU businesses, building your invoicing on EN 16931 data now saves a rebuild later.

EN 16931 vs XRechnung vs ZUGFeRD vs Factur-X

Section titled “EN 16931 vs XRechnung vs ZUGFeRD vs Factur-X”
EN 16931XRechnungZUGFeRDFactur-XPeppol BIS Billing 3.0
What it isThe standard (data model + syntaxes)German CIUSHybrid PDF + CII, German nameHybrid PDF + CII, French namePeppol’s CIUS
FileNone on its ownXML (UBL or CII)PDF/A-3 with XMLPDF/A-3 with XMLXML (UBL)
Maintained byCEN/TC 434KoSITFeRD with FNFE-MPEFNFE-MPE with FeRDOpenPeppol
Current version2026 (2017 still accepted)3.0.22.5.21.09.23.0
Main useReference for all of themGerman public sector and B2BGerman B2BFrench and German B2BBelgium, the Netherlands, Nordics, cross-border

Worked example: one reverse-charge invoice in EN 16931 terms

Section titled “Worked example: one reverse-charge invoice in EN 16931 terms”

A freelance developer in Hamburg, registered for German VAT, builds an app for a business in Lyon. Services to an EU business are taxed where the customer is, under the reverse charge, so the developer charges no VAT.

Business termValue
BT-1 Invoice number2026-041
BT-2 Issue date2 November 2026
BT-3 Type380 (commercial invoice)
BT-5 CurrencyEUR
BT-31 Seller VAT IDThe developer’s DE number
BT-48 Buyer VAT IDThe client’s FR number. Required by BR-AE-02 because this is reverse charge
BG-25 Line1 × “App development, October 2026” at €3,000.00, VAT category AE
BG-23 VAT breakdownTaxable amount (BT-116) €3,000.00, VAT amount (BT-117) €0.00, category (BT-118) AE, rate (BT-119) 0
BT-120 Exemption reason”Reverse charge” (required by BR-AE-10)
BT-109 / BT-110 / BT-112€3,000.00 / €0.00 / €3,000.00
BT-115 Amount due€3,000.00

Written as XRechnung, ZUGFeRD or Peppol BIS, the file looks different, but every one of these values sits in the same business term. Today, this cross-border invoice can still be a PDF if the client agrees, because neither the German nor the French e-invoicing mandate covers it (the French client may have to e-report the purchase through its own platform). From 1 July 2030, under ViDA, it will have to be an EN 16931 e-invoice reported to the tax authority.

How to produce and validate an EN 16931 invoice

Section titled “How to produce and validate an EN 16931 invoice”

You never send “plain EN 16931”. You send a format built on it, chosen by country and customer:

CustomerUsual format
German public bodyXRechnung
German businessZUGFeRD or XRechnung
French businessFactur-X, UBL or CII, through a Plateforme Agréée
Belgian business, or anyone on PeppolPeppol BIS Billing 3.0
Italian businessFatturaPA through SdI (not EN 16931)

To create one, use your invoicing software’s e-invoice export, an e-invoicing API, or an open-source library such as Mustang (Java) or factur-x (Python, which can build CII or UBL from a dictionary keyed by BT numbers).

To validate one:

ToolWhat it checks
European Commission invoice validatorFree online check of UBL and CII files against the official EN 16931 rules (release 1.3.17)
eInvoicing-EN16931 artefactsThe same official rules, as schematron for your own pipeline
KoSIT validatorXRechnung, which includes the EN 16931 rules
FNFE-MPE validatorFrench reform files (Factur-X, UBL, CII)
MustangZUGFeRD and Factur-X, including the PDF/A-3 part

Passing the EN 16931 rules is necessary but not always enough. A national CIUS adds its own rules, so also run the national validator.

An EN 16931 invoice is only as good as the VAT data in it. Picking the wrong VAT category code (S instead of AE, for example) or leaving out the buyer’s VAT number is a VAT error first and a validation error second. GoodVat Global Tax Compliance handles the VAT side:

  • Maps your obligations: which e-invoicing mandates, formats and VAT rules apply in each country you invoice into, now and under ViDA
  • Registers you for VAT, OSS or IOSS where you need it
  • Calculates the right VAT and category for every sale, including the reverse charge, and sends compliant invoices
  • Files your VAT returns in the EU, the UK and US states

GoodVat is not an e-invoicing platform, a Peppol access point or a format validator.

EN 16931 is the European standard for electronic invoices, written by the European standards body CEN at the request of the European Commission. It defines which pieces of information an e-invoice contains and what each one means, and which XML syntaxes can carry them. National formats such as XRechnung, Factur-X and Peppol BIS Billing 3.0 are all built on it.

Not on its own. EN 16931 is a data model: a list of business terms, such as the invoice number (BT-1) and the seller’s VAT number (BT-31), with rules about how they fit together. To make an actual file you express that model in one of the approved XML syntaxes, UBL 2.1 or UN/CEFACT CII, usually following a national rulebook such as XRechnung.

A CIUS (Core Invoice Usage Specification) is a set of extra rules on top of EN 16931 for a country or sector. It can make optional fields mandatory or restrict their values, but every invoice that follows a CIUS still complies with the standard. XRechnung, Peppol BIS Billing 3.0 and the French reform’s EN 16931 profile are examples.

What is the difference between UBL and CII?

Section titled “What is the difference between UBL and CII?”

They are two XML languages that can both carry an EN 16931 invoice. UBL 2.1 comes from OASIS and is used by Peppol. UN/CEFACT CII comes from the United Nations trade body and is used inside ZUGFeRD and Factur-X. The business data is the same, only the element names and structure differ.

EU public bodies have had to accept EN 16931 e-invoices since 2019 or 2020 under Directive 2014/55/EU. For business-to-business invoices it depends on the country: Germany and France build their mandates on it. Under ViDA, from 1 July 2030, EU e-invoices must follow EN 16931, although countries may still allow other formats for domestic sales.

CEN approved a revised edition of the core data model in March 2026 to support B2B invoicing and the ViDA reporting rules. It adds business terms for cases such as several orders on one invoice, VAT exemption reasons and payment discounts. The 2017 edition was withdrawn but invoices following it remain compliant during a migration period whose end date has not yet been set.

No. FatturaPA is Italy’s own national XML format and predates the European standard. Italy’s exchange system, SdI, does accept EN 16931 invoices in UBL or CII for public sector customers, under an Italian CIUS, and converts them to FatturaPA internally.

How can I check if an invoice complies with EN 16931?

Section titled “How can I check if an invoice complies with EN 16931?”

Use a validator that runs the official EN 16931 rules. The European Commission hosts a free online invoice validator for UBL and CII files, and the same rules are published as open validation artefacts on GitHub. For a national format, also run its own validator, such as the KoSIT validator for XRechnung.