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.
1. Principle and prerequisites
1.1. Scope
This guide aims to provide insight into transaction details for the transaction model T019 - Qualification 1.1. 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
Business partner | Description | Example of roles |
---|---|---|
Customer |
The Customer is the legal person or organization who is in demand of a product or service. |
Examples of customer roles are Buyer, Consignee, Debtor and contracting body. |
Supplier |
The Supplier is the legal person or organization who provides a product or service. |
Examples of Supplier roles are Seller, Consignor, Creditor and economic operator. |
Role | Description |
---|---|
Contracting body |
The Contracting Authority or Contracting Entity who is buying supplies, services or tendering public 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 PEPPOL transaction "T019 - Qualification 1.1" is a structured electronic business document for providing metadata of qualification information requested by a contracting body in a call for tenders. By submitting a qualification document the economic operator is legally responsible for the correctness of the information provided.
The transaction "T019 - Qualification 1.1" inherits from the CEN WS/BII 3 profile
The following table describe the transaction business and information requirements of "T019 - Qualification 1.1".
ID | Requirement |
---|---|
tbr86-001 |
The message shall indicate that it is about "economic operator sends his tender for the procurement project to contracting body" (message type identifier = profile name and version) |
tbr86-002 |
The economic operator shall be identified. |
tbr86-003 |
The contracting body shall be identified. |
tbr86-004 |
The sending date and time (and time zone) of the message shall be stated. |
tbr86-005 |
The message shall have a message ID and may refer to message ID’s of previously submitted qualification. |
tbr86-006 |
The message shall contain the following information about the business opportunity:
|
tbr86-007 |
The message shall contain either credentials issued by the Contracting Body, or the following information about the business:
|
tbr86-008 |
The message shall contain information to identify the qualification. |
tbr86-009 |
The message shall contain one or more (unstructured) qualification documents. |
tbr86-010 |
The message may contain information about the Lot IDs to which the qualification documents refer to. |
tbr86-011 |
The message shall contain metadata of each of the qualification documents that are attached to the tender:
|
tbr86-012 |
If imposed by the contracting body, the qualification 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 Qualification can be found at Syntax mapping for T019 - Qualification 1.1. The data model and syntax mapping explains how to use the UBL (or an underlying syntax) to support the Qualification information transaction requirements. It provides the syntax mappings from each UBL (or syntax) element to the Qualification information elements of this transaction.
3.2. Data model diagram
The following transaction data model illustrates the classes and information elements of T019 - Qualification 1.1.
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 Qualification: Syntax mapping for T019 - Qualification 1.1 |
The following code lists for coded elements and identifier schemes are used by the transaction.
4.1. 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:MainQualifyingParty/cac:Party/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 |
Additional qualifying economic operator electronic address identifier |
schemeID attribute is mandatory and must use values from EAS codes |
cac:AdditionalQualifyingParty/cac:Party/cbc:EndpointID/@schemeID |
Economic operator identifier |
schemeID attribute is mandatory and must use values from ICD codes |
cac:MainQualifyingParty/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 |
Additional qualifying economic operator identifier |
schemeID attribute is mandatory and must use values from ICD codes |
cac:AdditionalQualifyingParty/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.
<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.
<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:
<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 Qualification - Syntax mapping for T019 - Qualification 1.1 - 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. |
TransactionID | Transaction name | Short Description | cbc:CustomizationID |
---|---|---|---|
T019 |
Qualification |
The EO sends qualification request to the CA. |
urn:fdc:peppol.eu:prac:trns:t019:1.1 |
6. Descriptions of selected parts of the transaction
6.1. 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 qualification document with a qualification 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. |
<cbc:IssueDate>2020-05-10</cbc:IssueDate>
<cbc:IssueTime>14:34:27+01:00</cbc:IssueTime>
6.2. Parties
6.2.1. Economic operator
The economic operator is the party submitting the qualification, 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. In case there is a group of economic operators there is always one main economic operator and an unspecified number of additional economic operator qualifying for a contract
<cac:MainQualifyingParty>
<cac:Party>
<cbc:EndpointID schemeID="9946">500820007</cbc:EndpointID> (1)
<cac:PartyIdentification> (2)
<cbc:ID schemeID="0088">7300010000001</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName> (3)
<cbc:Name>Dutch Tulips Ltd</cbc:Name>
</cac:PartyName>
<cac:PostalAddress> (4)
<cbc:StreetName>Amsterdam Street Name 1</cbc:StreetName>
<cbc:CityName>Amsterdam</cbc:CityName>
<cbc:PostalZone>1092</cbc:PostalZone>
<cbc:CountrySubentity>North Holland</cbc:CountrySubentity>
<cac:Country> (5)
<cbc:IdentificationCode listID="ISO3166-1:Alpha2">NL</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyLegalEntity> (6)
<cbc:CompanyLegalFormCode>LegalForm</cbc:CompanyLegalFormCode>
</cac:PartyLegalEntity>
<cac:Contact> (7)
<cbc:Name>ContactName</cbc:Name>
<cbc:Telephone>Phone</cbc:Telephone>
<cbc:Telefax>Fax</cbc:Telefax>
<cbc:ElectronicMail>email</cbc:ElectronicMail>
</cac:Contact>
</cac:Party>
</cac:MainQualifyingParty>
<cac:AdditionalQualifyingParty>(8)
<cac:Party>
1 | Identifies the main economics operator’s electronic address and the scheme identifier for the electronic address |
2 | The national identifier of a economic operator as it is legally registered (e.g. VAT identification, such as KBO) |
3 | Name of the economic operator, as registered |
4 | Postal address of the economic operator |
5 | Legal form of the economic operator |
6 | Details to the country of the economic operator, with accompanying code list |
7 | Further contact details to the economic operator |
8 | Additional economic operators that belong to a group of economic operators can be added using cac:AdditionalQualifyingParty/cac:Party. |
9 | The response to a T19 - Qualification, a T020 - Qualification Reception Confirmation must be returned to the Main Qualifying Party. |
6.2.2. Contracting Body
The contracting body is the contracting authority or contracting entity who is buying supplies, services or tendering works.
<cac:ContractingParty>
<cac:Party>
<cbc:EndpointID schemeID="9930">DE122268496</cbc:EndpointID> (1)
<cac:PartyIdentification> (2)
<cbc:ID schemeID="0088">7300010000001</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName> (3)
<cbc:Name>Beschaffungsamt des BMI</cbc:Name>
</cac:PartyName>
</cac:Party>
</cac:ContractingParty>
1 | Identifies the contracting party’s electronic address and the scheme identifier for the electronic address |
2 | The national identifier of a contracting body as it is legally registered (e.g. VAT identification, such as KBO) |
3 | The name of the contracting body as it is registered |
6.2.3. Referenced lots
The lots to which the (group of) economic operator(s) is interested can be referenced.
<cac:TendererPartyQualification>
<cac:InterestedProcurementProjectLot> (1)
<cbc:ID>765a9937-16d5-4513-92b4-cc9800925951::1</cbc:ID>
</cac:InterestedProcurementProjectLot>
<cac:InterestedProcurementProjectLot>
<cbc:ID>765a9937-16d5-4513-92b4-cc9800925951::3</cbc:ID> (2)
</cac:InterestedProcurementProjectLot>
1 | UUID identifier to the call for tender. The lot number (in this case lot 1) is included after the UUID and follows double colons |
2 | UUID identifier to the call for tender. The lot number (in this case lot 3) is included after the UUID and follows double colons |
6.3. Document References and Qualification Encryption
The class cac:DocumentReference is used to point to the Call for Tender and to attach the qualification documents. If the Call For Tenders (CfT) business document provided an encryption certificate, the qualification documents MUST be encrypted by the economic operator using that certificate.
The example below shows the attached and encrypted qualification document and its hash and algorithm. Encrypted qualification documents must use the file extension .p7m in <cbc:Filename></cbc:Filename>. The attached qualification document in this example is an unstructured .pdf file.
<cac:AdditionalDocumentReference>
<cbc:ID>94f467cc-dc7c-464e-aea8-82522855979f</cbc:ID> (1)
<cbc:DocumentTypeCode listID="UNCL1001">916</cbc:DocumentTypeCode> (2)
<cbc:XPath>/TendererQualification/cac:TendererPartyQualification/cac:MainQualifyingParty/cac:Party[1]</cbc:XPath> (3)
<cbc:LocaleCode listID="ISO639-1">NL</cbc:LocaleCode> (4)
<cbc:VersionID>1</cbc:VersionID> (5)
<cbc:DocumentDescription>A qualification document of Dutch Tulips Ltd</cbc:DocumentDescription> (6)
<cac:Attachment> (7)
<cac:ExternalReference>
<cbc:URI>243A177F-E4E9-4FC8-B97E-BB1A950DD8F8</cbc:URI> (8)
<cbc:DocumentHash>72182B98A9DAB9A553CCF161EA049D41337E51DFDF74DDC8AB7B68E7CFFB7D1B
</cbc:DocumentHash> (9)
<cbc:HashAlgorithmMethod>http://www.w3.org/2001/04/xmlenc#sha256</cbc:HashAlgorithmMethod> (10)
<cbc:MimeCode>application/xml</cbc:MimeCode> (11)
<cbc:FileName>QualificationDutchTulips.pdf.p7m</cbc:FileName> (12)
<cbc:Description>size</cbc:Description> (13)
</cac:ExternalReference>
</cac:Attachment>
</cac:AdditionalDocumentReference>
<cac:AdditionalDocumentReference> (14)
<cbc:ID>765a9937-16d5-4513-92b4-cc9800925951</cbc:ID> (15)
<cbc:DocumentTypeCode listID="UNCL1001">311</cbc:DocumentTypeCode> (16)
<cbc:LocaleCode listID="ISO639-1">NL</cbc:LocaleCode>
<cbc:VersionID>1</cbc:VersionID>
<cbc:DocumentDescription>Call for Tenders reference</cbc:DocumentDescription>
</cac:AdditionalDocumentReference>
1 | ID of the referenced qualification document |
2 | The type of business document must also be included in the document reference element. In this case the code 916 is used to reference to a qualification document. Document Type
Code is coded according to code list 1001 issued by UN/CEFACT ( see UNCL 1001). In this message the following codes are allowed:
|
3 | XPath reference to the party to whom this qualification document belongs |
4 | Code indicating the language of the qualification document |
5 | Version of the referenced qualification document, must be an integer |
6 | Free textual description of the qualification document |
7 | The actual document that is attached |
8 | URI identifying the attached qualification document in the ASiC-E Container |
9 | Hash value to prove the integrity of the attached qualification document |
10 | Used hash algorithm, must be 'http://www.w3.org/2001/04/xmlenc#sha256</' |
11 | Mime code of the attachment |
12 | File name of the attachment. Encrypted qualification documents must use the file extension .p7m in <cbc:Filename></cbc:Filename>. |
13 | Size of the attachment |
14 | Another Document Reference pointing to the Call for Tender |
15 | ID of the Call for Tenders document |
16 | The type of business document must also be included in the document reference element. In this case the code 311 is used to reference to the Call for Tender. Document Type Code is coded according to code list 1001 issued by UN/CEFACT ( see UNCL 1001). In this message the following codes are allowed:
|