The PEPPOL Business Interoperability Specification, “BIS” from here on after, has been developed by the OpenPEPPOL AISBL Pre Award Coordinating Community and is published as part of the PEPPOL specifications.

Statement of copyright

This PEPPOL Business Interoperability Specification (BIS) document is based on the CEN CWA prepared by the BII workshop specified in the introduction below. The original CEN CWA document contains the following copyright notice which still applies:

© 2012 CEN All rights of exploitation in any form and by any means reserved worldwide for CEN national Members.

The CEN CWA documents and profiles prepared by the BII workshop are not specific to a business area. Subject to agreement with CEN, customizations have been made by PEPPOL to establish the PEPPOL BIS, detailing and adding further guidance on the use of BII profiles.

OpenPEPPOL AISBL holds the copyright in the customizations made to the original document. The customizations appear from the corresponding conformance statement which is attached to this document. For the purpose of national implementations, customizations covered by the conformance statement may be further refined and detailed by PEPPOL Authorities and/or other entities authorized by OpenPEPPOL AISBL, provided that interoperability with PEPPOL BIS is ensured. This PEPPOL BIS document may not be modified, re-distributed, sold or repackaged in any other way without the prior consent of CEN and/or OpenPEPPOL AISBL.

1. Principle and prerequisites

1.1. Scope

This guide aims to provide insight into transaction details for the transaction model T005 - Tender 1.2. The transaction description is meant to be a standalone description to be used as a part of one or more procurement profiles. It describes syntax mappings, requirements, rules and example.

The transactions, specified in this document are intended to be exchanged between the tendering systems of economic operators and contracting bodies. This means that it is expected that the parties have connected their systems to the internet, and that they have middleware in place to enable them to send and receive the transactions in a secure way, using an agreed syntax.

The content model of the transactions can also be used in procurement platforms or notification platforms, so that these platforms as well as procurement systems of economic operators and contracting bodies are based on the same information and process models, which makes them more interoperable. Even if platforms are not technically interoperable, the content model facilitates understanding the tendering documents and to participate in the tendering process.

1.2. Parties and roles

The following parties participate as business partners in this transaction, acting in the roles as defined below

Table 1. parties
Party Description Example of roles

Customer

The customer is the legal person or organization who is in demand of a product, service or works.

Buyer, consignee, debtor, contracting body

Supplier

The supplier is the legal person or organization who provides a product, service or works.

Seller, consignor, creditor, economic operator

Table 2. roles
Role Description

Contracting body

The contracting authority or contracting entity who is buying supplies, services or tendering works.

Economic operator

Party participating with a bid in a procurement process to sell goods, services or works.

2. Transaction business and information requirements

The following tables describe the transaction business and information requirements of "T005 - Tender 1.2", it inherits from CEN WS/BII 3 "Trdm090 Tender"(CWA 17027-218).

Table 3. Transaction business requirements of T005
ID Requirement

tbr90-001

The CEN/BII profile and transaction names and versions shall be identified.

tbr90-002

The economic operator shall be identified.

tbr90-003

The contracting body shall be identified.

tbr90-004

The sending date and time (and time zone) of the message shall be stated.

tbr90-005

The message shall have a message ID and may refer to message ID’s of previously submitted tenders.

tbr90-006

The message shall contain the following information about the business opportunity:

  • Call for tenders ID and version

  • Procurement Reference number

tbr90-007

The message shall contain either credentials issued by the Contracting Body, or the following information about the business:

  • Economic operator ID

  • Economic operator ID type

  • Economic operator name

  • Economic operator legal form

  • Registration number in the professional registry

  • Economic operator registration country code

  • Economic operator postal address (standard address elements)

  • Contacting details (standard contact person elements)

tbr90-008

The message shall contain the following information about the tender:

  • Tender ID

  • Tender signature

tbr90-009

The message shall contain one or more (unstructured) tender documents.

tbr90-010

The message may contain the following information about the tender:

  • Lot ID

  • Language

tbr90-011

The message shall contain metadata of each of the documents that are attached to the tender:

  • ID

  • Document type (Mime code)

  • Document description

  • Name

  • Size

  • Hash

  • Hash method

  • Encryption Information / certificate

  • The package to which the document belongs

  • Lot ID (if the document is specific to a lot)

tbr90-012

The message shall identify the tender documents. It may identify the language of the packaged documents.

tbr90-013

If imposed by the contracting body, the tender documents must be signed as specified by the contracting body

3. Data model: Syntax mapping and XML example

3.1. Data model and syntax mapping

The data model and syntax mapping for Tender can be found at Syntax mapping for T005 - Tender 1.2. The data model and syntax mapping explains how to use the UBL (or an underlying syntax) to support the Tender information transaction requirements. It provides the syntax mappings from each UBL (or syntax) element to the Tender information elements of this transaction.

3.2. XML example

The following XML example illustrates the structure of an instance of T005 - Tender 1.2.

Example used in document
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Tender xmlns="urn:oasis:names:specification:ubl:schema:xsd:Tender-2"
     xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2"
     xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2">
    <cbc:UBLVersionID>2.2</cbc:UBLVersionID>
    <cbc:CustomizationID>urn:fdc:peppol.eu:prac:trns:t005:1.2</cbc:CustomizationID>
    <cbc:ProfileID>urn:fdc:peppol.eu:prac:bis:p003:1.2</cbc:ProfileID>
    <cbc:ID schemeURI="urn:uuid">243a177f-e4e9-4fc8-b97e-bb1a950dd8f8</cbc:ID>
    <cbc:ContractFolderID>765a9937-16d5-4513-92b4-cc9800925951</cbc:ContractFolderID>
    <cbc:IssueDate>2016-11-24</cbc:IssueDate>
    <cbc:IssueTime>11:10:04+01:00</cbc:IssueTime>
    <cac:DocumentReference>
        <cbc:ID>7f38107c-d794-478f-96ff-cc0cc570a76b</cbc:ID>
        <cbc:DocumentTypeCode listID="UNCL1001">311</cbc:DocumentTypeCode>
        <cbc:LocaleCode listID="ISO639-1">NL</cbc:LocaleCode>
        <cbc:VersionID>1</cbc:VersionID>
        <cbc:DocumentDescription>Call forTenders reference</cbc:DocumentDescription>
    </cac:DocumentReference>
    <cac:DocumentReference>
        <cbc:ID>507</cbc:ID>
        <cbc:DocumentTypeCode listID="UNCL1001">310</cbc:DocumentTypeCode>
        <cbc:DocumentDescription>Offer-quotation-v1.pdf.p7m</cbc:DocumentDescription>
        <cac:Attachment>
            <cac:ExternalReference>
                <cbc:DocumentHash>72182b98a9dab9a553ccf161ea049d41337e51dfdf74ddc8ab7b68e7cffb7d1b</cbc:DocumentHash>
                <cbc:HashAlgorithmMethod>http://www.w3.org/2001/04/xmlenc#sha256</cbc:HashAlgorithmMethod>
                <cbc:MimeCode>application/pdf</cbc:MimeCode>
                <cbc:FileName>507-20161124 - eTendering SBDH for UBL v4.2.pdf.p7m</cbc:FileName>
            </cac:ExternalReference>
        </cac:Attachment>
    </cac:DocumentReference>
    <cac:DocumentReference>
        <cbc:ID>506</cbc:ID>
        <cbc:DocumentTypeCode listID="UNCL1001">310</cbc:DocumentTypeCode>
        <cbc:DocumentDescription>Offer-quotation-org-v1.docx.p7m</cbc:DocumentDescription>
        <cac:Attachment>
            <cac:ExternalReference>
                <cbc:DocumentHash>72182b98a9dab9a553ccf161ea049d41337e51dfdf74ddc8ab7b68e7cffb7d1b</cbc:DocumentHash>
                <cbc:HashAlgorithmMethod>http://www.w3.org/2001/04/xmlenc#sha256</cbc:HashAlgorithmMethod>
                <cbc:MimeCode>application/msword</cbc:MimeCode>
                <cbc:FileName>506-Offer-quotation-v1.docx.p7m</cbc:FileName>
            </cac:ExternalReference>
        </cac:Attachment>
    </cac:DocumentReference>
    <cac:DocumentReference>
      <cbc:ID>E-12345</cbc:ID>
      <cbc:DocumentTypeCode listID="UNCL1001">916</cbc:DocumentTypeCode> (1)
      <cbc:DocumentDescription>ESPD Response</cbc:DocumentDescription>(2)
      <cac:Attachment>
        <cac:ExternalReference>
          <cbc:DocumentHash>8BDD898034BB2DC7E246C6C08115DA292D84EBF23075610B4AB14CBABFB2DA0F</cbc:DocumentHash>
            <cbc:HashAlgorithmMethod>http://www.w3.org/2001/04/xmlenc#sha256</cbc:HashAlgorithmMethod>
          <cbc:MimeCode>application/xml</cbc:MimeCode>
          <cbc:FileName>ESPD_response.xml</cbc:FileName>(3)
        </cac:ExternalReference>
      </cac:Attachment>
    </cac:DocumentReference>
    <cac:TendererParty>
        <cbc:EndpointID schemeID="9946">500820007</cbc:EndpointID>
        <cac:PartyIdentification>
            <cbc:ID schemeID="0088">7300010000001</cbc:ID>
        </cac:PartyIdentification>
        <cac:PartyName>
            <cbc:Name>Dutch Tulip Ltd.</cbc:Name>
        </cac:PartyName>
        <cac:PostalAddress>
            <cbc:StreetName>null</cbc:StreetName>
            <cbc:CityName>not a city</cbc:CityName>
            <cac:Country>
                <cbc:IdentificationCode listID="ISO3166-1:Alpha2">NL</cbc:IdentificationCode>
            </cac:Country>
        </cac:PostalAddress>
        <cac:PartyLegalEntity>
            <cbc:CompanyLegalForm>NV beleggingsmaatschappij met veranderlijk kapitaal blijkens statuten structuurvennootschap</cbc:CompanyLegalForm>
            <cac:RegistrationAddress>
                <cac:Country>
                    <cbc:IdentificationCode listID="ISO3166-1:Alpha2">NL</cbc:IdentificationCode>
                </cac:Country>
            </cac:RegistrationAddress>
        </cac:PartyLegalEntity>
    </cac:TendererParty>
    <cac:ContractingParty>
        <cac:Party>
            <cbc:EndpointID schemeID="9930">DE122268496</cbc:EndpointID>
            <cac:PartyIdentification>
                <cbc:ID schemeID="0204">991-1234512345-06</cbc:ID> (1)
            </cac:PartyIdentification>
            <cac:PartyName>
                <cbc:Name>Beschaffungsamt des BMI</cbc:Name>
            </cac:PartyName>
        </cac:Party>
    </cac:ContractingParty>
    <cac:TenderedProject>
        <cac:ProcurementProjectLot>
            <cbc:ID>NA</cbc:ID>
        </cac:ProcurementProjectLot>
    </cac:TenderedProject>
</Tender>

4. Code lists

Any element with the semantic data type = code, can mandate the use of a specific code list (or a fixed value). The applicable code lists can be found in the Code list section. In this section, you can find the valid codes, their names and description, and also links to where the same code list is used elsewhere in the transaction, or in other PEPPOL BIS transactions.

Information elements that are ruled by codelists in this transaction are also described in the Syntax mapping for Tender: Syntax mapping for T005 - Tender 1.2

The following code lists for coded elements and identifier schemes are used by the transaction.

4.1. Code list for elements

4.1.1. Document language

Qualifier

ISO639-1 (listID)

Document location

cac:DocumentReference/cbc:LocaleCode

Source codelist

ISO639-1

4.1.2. Country code

Qualifier

ISO3166-1:Alpha2 (listID)

Document location

cac:Country/cbc:IdentificationCode

Source codelist

Use Alpha-2 codes from ISO3166

4.1.3. DocumentTypeCode

Qualifier

UNCL1001 (listID)

Document location

cac:DocumentReference/cbc:DocumentTypeCode

Source codelist

UNCL 1001

4.2. Code list for identifier schemes

Table 4. Code list for identifier schemes
Business Term Allowed Scheme Applicable Xpath

Economic operator electronic address identifier

schemeID attribute is mandatory and must use values from EAS codes

cac:TendererParty/cbc:EndpointID/@schemeID

Contracting body electronic address identifier

schemeID attribute is mandatory and must use values from EAS codes

cac:ContractingParty/cac:Party/cbc:EndpointID/@schemeID

Economic operator identifier

schemeID attribute is mandatory and must use values from ICD codes

cac:TendererParty/cac:PartyIdentification/cbc:ID/@schemeID

Contracting body identifier

schemeID attribute is mandatory and must use values from ICD codes

cac:ContractingParty/cac:Party/cac:PartyIdentification/cbc:ID/@schemeID

5. PEPPOL Identifiers

PEPPOL has defined a Policy for use of Identifiers that specifies how to use identifiers in both its transport infrastructure and within the documents exchanged across that infrastructure. It also introduces principles for any identifiers used in the PEPPOL environment. The e-Tendering pilot adopts and extends the PEPPOL Policy in the following ways:

5.1. Party Identifiers used in business (UBL) documents

All party identifiers (cac:PartyIdentification/cbc:ID) have an optional scheme identifier attribute '@schemeID'. If used, the value shall be chosen from the code list ICD codes.

Examples of usage in cac:PartyIdentification
<cac:PartyIdentification>
        <cbc:ID schemeID="0088">5790000435968</cbc:ID> (1)
</cac:PartyIdentification>
1 schemeID attribute is optional, but when used, the codes must be from ICD codes

5.2. Electronic address identifier used in business (UBL) documents

All electronic address identifiers (cbc:EndpointID/@schemeID) use the Electronic Address Scheme code list (EAS), maintained by CEF (CEF Code lists).

Valid values are found here: EAS codes.

Examples of usage in cbc:EndpointID
<cbc:EndpointID schemeID="0184">DK87654321</cbc:EndpointID> (1)
1 schemeID attribute is mandatory and must use values from EAS codes

5.3. Document Identifiers used in business (UBL) documents

5.3.1. UBL Version ID

This transaction model is using the UBL 2.2 syntax. The namespace of the XML-message does only communicate the major version number. Since it is important for the receiver to also know what minor version of the syntax that is used, the element UBLVersionID must be stated with the value 2.2:

Examples of usage in PartyIdentification and EndpointID
<cbc:UBLVersionID>2.2</cbc:UBLVersionID>

5.3.2. Profile ID

ProfileID identifies what business process a given message is part of, and are connected to one business process, and may contain multiple document types.

Valid profile identifiers are described in the Syntax mapping for Tender - Syntax mapping for T005 - Tender 1.2 - and the corresponding BIS document, see Main documentation site.

5.3.3. Customization ID

The PEPPOL Customization ID identifies the specification of content and rules that apply to the transaction. Profiles are connected to one business process (ProfileID), and may contain multiple transactions. Valid document instances shall contain corresponding ProfileID and CustomizationID.

CustomizationID is a string without spaces. Which customization identification should be used, is based on which transaction is sent.
For implementers, please note that the process identifiers in the document instance MUST correspond to the SMP process identifier.
Table 5. Customization ID to be used for this transaction.
TransactionID Transaction name Short Description cbc:CustomizationID

T005

Tender

EO sends his tender for the procurement project to CA

urn:fdc:peppol.eu:prac:trns:t005:1.2

6. Descriptions of selected parts of the transaction

6.1. Parties

6.1.1. Economic operator

The economic operator is the party submitting the tender, and is any natural or legal person or public entity or group of such persons and/or entities, including any temporary association of undertakings, which offers the execution of works and/or a work, the supply of products or the provision of services on the market.

Economic operator is represented in UBL 2.2 using the TendererParty
<cac:TendererParty>
    <cbc:EndpointID schemeID="9946">500820007</cbc:EndpointID>
    <cac:PartyIdentification>
        <cbc:ID schemeID="0088">7300010000001</cbc:ID>
    </cac:PartyIdentification>
    <cac:PartyName>
        <cbc:Name>Dutch Tulip Ltd.</cbc:Name>
    </cac:PartyName>
    <cac:PostalAddress>
        <cbc:StreetName>null</cbc:StreetName>
        <cbc:CityName>not a city</cbc:CityName>
        <cac:Country>
            <cbc:IdentificationCode listID="ISO3166-1:Alpha2">NL</cbc:IdentificationCode>
        </cac:Country>
    </cac:PostalAddress>
    <cac:PartyLegalEntity>
        <cbc:CompanyLegalForm>NV beleggingsmaatschappij met veranderlijk kapitaal blijkens statuten structuurvennootschap</cbc:CompanyLegalForm>
        <cac:RegistrationAddress>
            <cac:Country>
                <cbc:IdentificationCode listID="ISO3166-1:Alpha2">NL</cbc:IdentificationCode>
            </cac:Country>
        </cac:RegistrationAddress>
    </cac:PartyLegalEntity>
</cac:TendererParty>

6.1.2. Contracting Body

The contracting body is the contracting authority or contracting entity who is buying supplies, services or tendering works.

Example
<cac:ContractingParty>
    <cac:Party>
        <cbc:EndpointID schemeID="9930">DE122268496</cbc:EndpointID>
        <cac:PartyIdentification>
            <cbc:ID schemeID="0204">991-1234512345-06</cbc:ID> (1)
        </cac:PartyIdentification>
        <cac:PartyName>
            <cbc:Name>Beschaffungsamt des BMI</cbc:Name>
        </cac:PartyName>
    </cac:Party>
</cac:ContractingParty>
1 The only required element is the cac:PartyIdentification/cbc:ID, but it is recommended to inform the cbc:EndpointID and the cbc:Name as depicted in the example above.

6.2. Document references

6.2.1. Procurement project identifier

The identifier specified by the buyer as a reference number for all documents in the procurement process. It is also known as procurement project identifier, procurement reference number or contract folder identifier. In UBL this element is mapped to the cbc:ContractFolderID class.

<cbc:ContractFolderID>765a9937-16d5-4513-92b4-cc9800925951</cbc:ContractFolderID>

6.2.2. Call for tender reference

A reference to the call for tender as issued by the contracting body. Creates a link between the tender and its call for tender. In the UBL mapping this is represented using the cac:DocumentReference class.

<cac:DocumentReference>
    <cbc:ID>7f38107c-d794-478f-96ff-cc0cc570a76b</cbc:ID>
    <cbc:DocumentTypeCode listID="UNCL1001">311</cbc:DocumentTypeCode>
    <cbc:LocaleCode listID="ISO639-1">NL</cbc:LocaleCode>
    <cbc:VersionID>1</cbc:VersionID>
    <cbc:DocumentDescription>Call forTenders reference</cbc:DocumentDescription>
</cac:DocumentReference>

6.2.3. Attached documents and tender encryption

The class cac:DocumentReference is used to attach the tender documents or their references. If the Call For Tenders (CfT) business document provided an encryption certificate, the tender documents MUST be encrypted by the economic operator using that certificate.

The example below shows the attached and encrypted tender document and its hash and algorithm. Encrypted tender documents must use the file extension .p7m in <cbc:Filename></cbc:Filename>. The attached tender document in this example is an unstructured .pdf file.

<cac:DocumentReference>
    <cbc:ID>507</cbc:ID>
    <cbc:DocumentTypeCode listID="UNCL1001">310</cbc:DocumentTypeCode>
    <cbc:DocumentDescription>Offer-quotation-v1.pdf.p7m</cbc:DocumentDescription>
    <cac:Attachment>
        <cac:ExternalReference>
            <cbc:DocumentHash>72182b98a9dab9a553ccf161ea049d41337e51dfdf74ddc8ab7b68e7cffb7d1b</cbc:DocumentHash>
            <cbc:HashAlgorithmMethod>http://www.w3.org/2001/04/xmlenc#sha256</cbc:HashAlgorithmMethod>
            <cbc:MimeCode>application/pdf</cbc:MimeCode>
            <cbc:FileName>507-20161124 - eTendering SBDH for UBL v4.2.pdf.p7m</cbc:FileName>
        </cac:ExternalReference>
    </cac:Attachment>
</cac:DocumentReference>

6.2.4. Document Type Code

The type of business document must also be included in the document reference element. Document Type Code is coded according to code list 1001 issued by UN/CEFACT. For a complete list of all the document types, see UNCL 1001. In this message the following codes are used:

  • 310 (Offer/quotation): Tender reference

  • 311 (Request for quote): Call for tender reference

  • 916 (Related document): ESPD response

Document Type Code
<cbc:DocumentTypeCode listID="UNCL1001">311</cbc:DocumentTypeCode>

6.2.5. ESPD response

ESPD response can be given as either structured or unstructured information, based on what is asked for in the call for tenders. The transaction T005 does not prescribe a specific ESPD version to be used. The use of other ESPD versions than those used in T004 may result into incompatibilities. Thus, it should be described by the Contracting authority in the Tendering Documents which ESPD version is used and how it can be returned by Economic Operators.

Example provided ESPD response (structured)
    <cac:DocumentReference>
      <cbc:ID>E-12345</cbc:ID>
      <cbc:DocumentTypeCode listID="UNCL1001">916</cbc:DocumentTypeCode> (1)
      <cbc:DocumentDescription>ESPD Response</cbc:DocumentDescription>(2)
      <cac:Attachment>
        <cac:ExternalReference>
          <cbc:DocumentHash>8BDD898034BB2DC7E246C6C08115DA292D84EBF23075610B4AB14CBABFB2DA0F</cbc:DocumentHash>
            <cbc:HashAlgorithmMethod>http://www.w3.org/2001/04/xmlenc#sha256</cbc:HashAlgorithmMethod>
          <cbc:MimeCode>application/xml</cbc:MimeCode>
          <cbc:FileName>ESPD_response.xml</cbc:FileName>(3)
        </cac:ExternalReference>
      </cac:Attachment>
    </cac:DocumentReference>
1 Codevalue used for ESPD response must be 916 (Related document)
2 DocumentDescription should be "ESPD Response"
3 Name of the structured ESPD file

6.3. Date and time

In the tender both the issue date and time must be sent. The issue date and time is indicative. The contracting authority shall reply to the tender document with a tender receipt notification where the actual registration date and time for the tender will be indicated.

Issue date is xs:date data type, and the date is specified as "YYYY-MM-DD" where:

  • YYYY - four digit year

  • MM - two digit month(01 to 12)

  • DD - two digit day(0)

Issue time is xs:time data type, and the time is specified as "hh:mm:ss" where:

  • hh - two digits of hour (00 to 23) (am/pm NOT allowed).

  • mm - two digits of minute(00 to 59)

  • ss - two digits of second(00 to 59)

  • TZD - time zone designator (Z or +hh:mm or -hh:mm)

The issue time must specify the time zone.
Example of Issue date/time
<cbc:IssueDate>2016-11-24</cbc:IssueDate>
<cbc:IssueTime>11:10:04+01:00</cbc:IssueTime>