Back to insights

What Is the Difference Between EN 16931, Peppol BIS Billing 3.0 and UBL?

Learn the difference between EN 16931, UBL and Peppol BIS Billing 3.0, and understand how they work together in Peppol e-invoicing.

What Is the Difference Between EN 16931, Peppol BIS Billing 3.0 and UBL?

Imagine that you are starting a Peppol e-invoicing project. Three terms immediately appear:

EN 16931. UBL. Peppol BIS Billing 3.0.

All three are related to e-invoicing. All three are frequently mentioned together in technical documentation. Although their names are different, it may not be immediately clear where one ends and another begins.

So, what is the difference between them?

You can think of it as a form-filling process:

  • EN 16931 defines which information should be included in the form and what that information means.

  • UBL defines how this information is written in a machine-readable format.

  • Peppol BIS Billing 3.0 defines the rules for using this information in invoices exchanged through Peppol.

In short, all three operate at different layers of the same electronic invoice.

What Is the Difference Between EN 16931, UBL and Peppol BIS?

Concept

Role

Question It Answers

EN 16931

Defines the common meaning of invoice data.

What information should an invoice contain?

UBL

Represents invoice data in an XML structure.

How should this information be written for systems to process it?

Peppol BIS Billing 3.0

Defines the rules for Peppol invoicing.

Which rules apply to an invoice sent through Peppol?

Now let's look at each of these three layers more closely.

What Is EN 16931?

If one company uses the term “seller name,” another uses “supplier name,” and another system defines the same information differently, systems may have difficulty interpreting the data consistently.

EN 16931 provides a common reference point.

EN 16931 is the European standard that defines the common meaning of core electronic invoice information.

For example, it standardizes how data such as the following is understood:

  • seller information,

  • buyer information,

  • invoice number,

  • invoice date,

  • tax information,

  • payment information,

  • total amounts.

The role of EN 16931 is to give invoice data a common meaning.

It ensures that information interpreted as “seller name” in one system can also be understood with the same meaning by another system.

The way this information is represented in XML belongs to the next layer.

What Is UBL?

EN 16931 tells us what the information on an invoice means. The next step is to represent that information in a structure that computer systems can read.

This is where UBL (Universal Business Language) comes in.

UBL is a standard for representing electronic business documents in an XML-based structure.

For example, EN 16931 may define:

“This information represents the seller's name.”

UBL then defines where that seller name appears within the XML document.

This allows different software systems to read the same electronic document and transfer its data into their own systems.

UBL can also be used for different types of business documents, including:

  • Invoice

  • Credit Note

  • Order

  • Order Response

  • Despatch Advice

  • Catalogue

In other words, UBL's role is to make business information technically exchangeable between systems.

What Is Peppol BIS Billing 3.0?

At this point, we already have two layers:

EN 16931 defines the meaning of the information.
UBL provides the XML structure for that information.

But several questions still need to be answered before an invoice can be exchanged through Peppol:

  • Which fields are mandatory?

  • Which codes should be used?

  • Which rules must the invoice meet?

Peppol BIS Billing 3.0 provides these rules.

Peppol BIS Billing 3.0 is an implementation specification that defines how electronic invoices and credit notes are used within the Peppol environment.

For example, it defines:

  • which information is mandatory,

  • which code lists can be used,

  • under which conditions certain fields must be completed,

  • which business rules the invoice must satisfy.

Peppol BIS Billing 3.0 is based on EN 16931 and is structured as a CIUS, or Core Invoice Usage Specification.

Put simply, EN 16931 provides the common framework, while Peppol BIS clarifies how that framework is applied to Peppol invoices.

How Do EN 16931, UBL and Peppol BIS Work Together?

Let's use the seller name on an invoice as an example.

EN 16931

Defines that the information represents the “seller name” and establishes its meaning within the invoice.

UBL

Defines where the seller name appears within the XML document.

Peppol BIS Billing 3.0

Defines how that field should be used in a Peppol invoice and how it is evaluated during validation.

The same information therefore passes through three different layers:

Meaning → Technical structure → Usage rules

The Peppol network then delivers the correctly prepared document from the sender to the receiver.

That is the core logic behind the entire structure.

Can Every UBL Invoice Be Sent Through Peppol?

Preparing an invoice in UBL format alone is not enough for it to be sent through Peppol.

UBL is a broad standard.

A UBL invoice may be technically valid while still failing to meet a Peppol BIS requirement.

For example:

  • a mandatory field may be missing,

  • an incorrect code may be used,

  • a business rule may not be satisfied.

In this case, the XML document can be valid but still fail Peppol validation.

This distinction is particularly important for companies planning a Peppol integration.

Can an EN 16931-Compliant Invoice Be Sent Through Peppol?

A similar principle applies to EN 16931.

Meeting the semantic requirements defined by EN 16931 provides an important foundation.

However, when the invoice is exchanged through Peppol, the relevant Peppol BIS rules must also be met.

You can think of the relationship this way:

EN 16931 defines the framework.
UBL carries the information.
Peppol BIS defines the usage rules.

When these three layers work together, the structured electronic invoice used in Peppol processes is created.

Why Does Peppol BIS Billing 3.0 Use UBL 2.1?

There is another common source of confusion in the names:

Peppol BIS Billing 3.0
and
UBL 2.1

These numbers refer to versions of different specifications.

The 3.0 in Peppol BIS Billing 3.0 refers to the version of the BIS specification.

The primary UBL version used in this context is UBL 2.1.

So the “3.0” in Peppol BIS Billing 3.0 should not be interpreted as a UBL version number.

The current Peppol BIS Billing specification also supports CII in certain use cases, while UBL 2.1 remains the primary syntax used in Peppol invoicing processes.

Where Does Peppol Fit Into This Structure?

So far, we have looked at how the invoice is defined and which rules it must follow.

The invoice still needs to reach the other party.

This is where Peppol comes in.

Peppol is a network and interoperability framework that enables electronic business documents to be exchanged between different companies and systems using standardized processes.

The structure can therefore be summarized in four steps:

EN 16931 → Meaning of the information
UBL → Technical structure of the information
Peppol BIS → Usage rules
Peppol → Transmission of the document

Once you understand these four lines, the difference between EN 16931, UBL and Peppol BIS becomes much clearer.

How Does JetPeppol Support the E-Invoicing Process?

The document structures and rules used when sending invoices through Peppol can vary depending on the country.

JetPeppol is a Peppol Access Point and e-invoicing platform that supports companies in sending and receiving electronic invoices through the Peppol network.

Supported structures include:

  • Peppol BIS Billing 3.0

  • BIS Billing Credit Note

  • BIS Self-Billing

  • XRechnung

  • PINT AE

Incoming and outgoing Peppol documents can be tracked through the platform, while incoming invoices can be received in a structure ready for transfer to an ERP system.

You can contact the JetPeppol team to evaluate which Peppol structure is appropriate for your invoicing processes and the countries in which you operate.