Changes in code lists are also reflected by changes in the validation artefacts enforcing only valid codes. All validation changes apply to both UBL and CII validation rules.

Version 3.0.4 - 2020 Spring

Release date


Changes to BIS document

  • The code example in section 6.6 (Classification) is updated from the temporary code ”MC” to the code “TST” (The UNSPSC commodity classification system) from code list UCL7143. [POACC-274]

    • for PEPPOL BIS Catalogue without response 3

    • for PEPPOL BIS Catalogue only 3

  • Following BIS generalized so that they use term TAX instead of VAT. Enables using them for other similar taxes like GST. Catalogue, Catalogue only, Order, Ordering, Order Agreement, Punch Out, Invoice Response. [POACC-265]

    • Text in guidelines generalized from VAT to GST

    • Element names and descriptions that had VAT in them generalized as TAX

    • Rules requesting Tax type ID as VAT removed to allow for GST. VAT now given as example.

    • Added new code for allowed TaxScheme Identifiers. Now allows VAT or GST.

  • Updated the link “Peppol Identifiers” of all the BIS DOCUMENTS in to reflect the newest version of “Policy for use of identifiers”[POACC-188]

Changes to syntax

  • Added cac:Package with elements cbc:ID and cbc:PackageTypeCode to support identification of packages within a transport handling unit. [POACC-301]

  • In the Order Syntax the sequence of Item Description (tir01-133) and Item Name (tir01-135) has been corrected so that Description is now before the Name. This is now in line with the UBL 2.1 syntax specification. [POACC-299]

  • Added name attribute to ItemClassificationCode and aligned Catalogue, Order, OrderAgreement, Order Respones and Shopping Cart. [POACC-277]

Changes to supporting documents

  • Updated test files with valid GLN numbers to pass travis validation according to the updated GLN validation rules introduced in version 3.0.3. [POACC-321]

Changes to code lists and validation artefacts

  • Added country code 1A for Kosovo into ISO 3166 for all BIS specifications. [POACC-324]

  • Updated test file poacc-upgrade-3\\rules\\snippets mlr/snippet-3.xml in order for the test file to conform to mlr syntax. [POACC-322]

  • Rule R026 in OrderAgreement modified so that it is fired only when TaxTotal is provided. [POACC-302]

  • In the Catalogue transaction the code PRODUCT_IMAGE is added to allowed DocumentTypeCodes in ItemSpecificationDocumentReference on line level. The code may be used to identify the main image of a product. [POACC-297]

  • Added code TRADE_ITEM_DESCRIPTION as allowed attachment type in Catalogue and PunchOut [POACC-279]

  • PEPPOL-T19-R011 and PEPPOL-T19-R016 updated to take unbounded cac:RequiredItemLocationQuantity into consideration. [POACC-255]

  • Changed character (code ) for citation marks (“) as it was in conflict with some implementations. Changes was made in Rules for transactions T16, T19 and T110. [POACC-249]

  • Validation of cbc:CustomizationID in all BIS specifications changed from element must contain exactly the relevant transaction identifier to element content must begin with that identifier value. [POACC-191]

  • Descriptions and some names of codes in UNCL7143 corrected in line with the official code list version d19a. Applies to all BIS using this code list. [POACC-258]

Version 3.0.3

Release date


Changes to BIS document

  • Description of EAS code for code ION 0190 corrected. No change to the code itself.

Changes to syntax mapping

  • An error in namespace for Application Response corrected in transaction 71, Message Level Response. Lowercase a changed to uppercase.

  • Address information for consignee and delivery party added to Order transaction tir01-92 to 98.

Changes to code lists and validation artefacts

  • Update in EAS code list, addition of codes: 0130 and 0204, and deprecating of code 9902, 9904, 9905, 9917 and 9921.

  • An error in a common structural validation of GLN numbers, rule PEPPOL-COMMON-R040, corrected.

  • Changed implementation of empty element-test. Rule updated so that it also fails on whitespace only content.

Version 3.0.2 - hotfix

Release date


Changes to code lists and validation artefacts

  • Update in EAS code list, addition of codes: 0151 ,0183, 0201 and 0200, and renaming of code 0199

  • Update in ICD code list, addition of codes: 0201 and 0200, and renaming of code 0199

  • Update in UNCL7143 code list, addition of codes: TSQ, TSR, TSS and TST

Version 3.0.1

Release date


This release is a backward compatible minor upgrade, version 3.0.1 replacing the previous version 3.0.0 of OpenPEPPOL BIS document, other than the BIS Billing 3.0. The release includes changes to the BIS documents as well as the validation artifacts (VA’s).

Changes to BIS documents and validation artifacts

This release applies the following changes to the previosly published BIS 3.0 documents. This release does not include any changes to the BIS 2.0 documents. With the publication of this release the BIS 3.0 version become the mandatory version and the BIS 2.0 version become optional until the phase out date. For details see the migration plan

  • Message Level Response document lifecycle clarified POACC-152

  • Review comment removed in Invoice Response BIS 3 POACC-161

  • Namespace added for catalogue response POACC-163

  • Parties image in Despatch Advice BIS added POACC-183

  • Floating point error when comparing decimals in some implementations. All use of the xpath function sum() adjusted/verified. (Both Billing and BIS Order/OrderAgreement) POACC-184

  • Message examples for Invoice response corrected.

  • Documentation of syntax binding for Dispatch Advice corrected POACC-180

  • Added a common structure validation rule for Norwegian organizational numbers and GLN numbers.

  • Various minor text corrections and minor bug fixes.

New BIS for Catalogue without Response

This release includes a new BIS document for a Catalogue without response. This new BIS contains the same Catalogue transaction (T19) as the Cataloge only BIS but without the Catalogue Response transaction (T58). This new BIS can be used for sending catalogues to buyers with requiring them to implment the capability for responding, and thus simplifying the implementation while sacrificing some of the functionality provided by the Catalogue Only BIS.

The version number of this new BIS is set as 3.0.1 to keep it aligned with other BIS documents.

Version 3.0.0

This release is a new non-backwards compatible major upgrade of all OpenPEPPOL BIS specifications, other than the BIS Billing 3.0.

The OpenPEPPOL BIS 3.0 upgrade project was started in January 2018. Project was mandated to upgrade the PEPPOL BIS specifications so that they are aligned with the PEPPOL BIS Billing 3.0 specification that is based on the CEN/EN 16931 eInvoicing standard.


The current BIS specifications addressed by this project are the following.

  • PEPPOL BIS 1A Catalogue Only

  • PEPPOL BIS 3A Order Only

  • PEPPOL BIS 18A Punch Out

  • PEPPOL BIS 28A Ordering

  • PEPPOL BIS 30A Despatch Advice

  • PEPPOL BIS 36A Message Level Response

  • PEPPOL BIS 42A Order Agreement

  • PEPPOL BIS 63A Invoice Message Response

In the work on each BIS, the following key tasks are identified.

  1. Aligning with Invoice BIS. (code lists, party information, VAT details, Item details). Ref. Invoice gap analysis for potential gaps.

  2. Changing documentation format from Word to AsciiDoc.

  3. Processing and adoption of new requirements.

  4. Adopting unit testing for validation objects.

  5. Aligning Syntax bindings between documents.

For further details please refer to the project mandate


For each Business Interoperability Specification (BIS) there are the following parts:

Business Interoperability Specifications.

BIS document

The specification of a business process. The document describes the business process that it supports and provides details on how individual elements that are exchanged in transactions are to be used and understood. It provides business examples and syntax examples where needed. Defines rules that govern the data as well as code list that must be used.


The syntax document lists the data model of a transaction inluding what elements it contains, their cardinality and allowed values. The datamodel also contains examples of data. In this document the datamodel is mapped to the UBL 2.1 syntax.


For each BIS there are three sets of rules.

Common rules

These are rules that apply to all transaction and address issues such as, there may not be empty elements or that a date must be structure following the YYYY-MM-DD ISO format.

Each common rule has an identifier. As example "PEPPOL-COMMON-R001"

Basic rules

These are rules that are automatically generated based on the syntax datamodel. These include rules on:

  • Cardinality of elements and classes.

  • Allowed fixed values for elements and attributes.

  • Allowed codes in code lists.

Each basic rule has an identifier that include the transaction id and a sequential number starting with a B. As example "PEPPOL-T01-B00101"

Business rules

There are business rules that can not be automatically generated from the data model. These are mainly rules that concern relations between elements, such as:

  • Conditional values (IF-THEN)

  • Calculations of elements.

  • Minimum and maximum values.

  • Dependencies between elements.

Each business rule has an identifier that include the transaction id and a sequential number starting with a R. As example "PEPPOL-T01-R001"


These contain two type.

  • Schematron files that can be used for validating a transactions.

    • Schematron files for all transactions are provided in a single zip file.

  • Example files that can be used in tests and as reference in implementations.

    • Example files for all transaction are also provided in a single zip file.


The documentation includes a listing of all code lists used in one or more transactions. The code lists are fully populated with information on where they are used, what their code values are and their definitions.

When a BIS specification defines how a code is used that definition overrules the general definition in the code list.

Overview of alignments

The alignment of the BIS specification to the EN has been done with reference to the EN 16931 electronic invoice in line with the adoption of that standard into PEPPOL BIS Billing 3.0. The work is based on the following documents and decisions:

An important part of the alignment work was to adopt the documentation of the PEPPOL BIS Billing 3.0 to other specifications by using a browsable format instead of Word documents and spreadsheets.

Minutes and further details can be found in the project space in Confluence .

Further details of the the changes made can be found in Overview of Alignments.

Accepted changes (RFC)

The following changes were processed and agreed by the team.PB30-38 Validation Artefacts improvements candidates:

  • Batch/LOT and serial numbers in order 3a and 28a [PB30-1].

  • ID in AdditionalDocumentReference [PB30-4].

  • Change to DespatchAdvice BIS 30A, SFTI 20170622.xlsx [PB30-5].

  • Questions about PEPPOL BIS in post-award [PB30-7].

  • Request the OpenPEPPOL Post-Award CC to include the BuyersItemIdentification element in the BIS 28A Ordering and 30A Despatch Advice messages. [PB30-11].

  • Despatch Advice (BIS 30A), add postal Address informations and Person information [PB30-14].

  • Despatch Advice (BIS 30A), extension of cardinality for order reference ID [PB30-16].

  • General - enable price types for price is all transactions, other than Invoice [PB30-23].

  • General - harmonize Contracted Item Indicator and reference to contract [PB30-24].

  • Order Response - Use code list 1229 instead of 1225 as status code on line level [PB30-26].

  • Order Response - Introduce the use of line status code to indicate already delivered items [PB30-30].

  • Order Response - Introduce a document status code to confirm order reception [PB30-32].

  • Punch Out - Add delivery address and validity period on line level [PB30-33].

  • Punch Out - Introduce support for reserving goods [PB30-34].

  • Catalogue - Enable the use of standard item numbers to reference between related items [PB30-35].

  • Question for documentation on PEPPOL_BIS-18A.pdf, “Punch out” [PB30-37].


The following individuals have contributed to this work by participation in team meetings and with various development and review work between meetings.

  • Georg Birgisson, DIGG/Midran Ltd.

  • Siw Meckelborg, DIFI/Edisys

  • Charlotte Dahl Skovhus, MySupply

  • Arduini Iacopo, Emilia Romagna

  • Thomas Pettersson, SFTI/PSK Konsult

  • Dirk Willekens, BOSA

  • Arne Johan Larsen, Equinor

  • Elisa Bertocchi, Emilia Romagna

  • Sara Facchinetti, Infocert

  • Jalini Srisgantharajah, DIFI

  • Martin Forsberg, DIGG/Ecru consulting

  • Helena Ask, Visma

  • Peter Danko, E-delivery

  • Ole Ellerbæk Madsen, ERST

  • Jan Mæröe, DIFI

  • Erlend Klakegg Bergheim, DIFI

  • Sören Lennartson, DIGG

  • Jerry Dimitriou, Unipi

  • Serge Libert, BOSA

  • Andriana Prentza, Unipi

  • Manuel Gozzi, Emilia Romagna