Overview of Peppol Party Identifiers per country: Chamber of Commerce, OIN, VAT, GLN and more, with EAS codes.
Every document on the Peppol network contains identifiers indicating who the sender and receiver are. These identifiers determine how the document is routed: to which Access Point, to which organisation. Choosing the correct identifier type is therefore essential for successful delivery.
A Party Identifier in Peppol consists of two parts:
0106 for a Dutch Chamber of Commerce number.12345678 as a Chamber of Commerce number.In the UBL invoice, this appears as the EndpointID element with a schemeID attribute:
<cbc:EndpointID schemeID="0106">12345678</cbc:EndpointID>
The schemeIDs come from the EAS code list (Electronic Address Scheme), part of the Peppol BIS Billing specification. This code list is maintained by OpenPeppol and regularly updated.
Below you will find the most commonly used identifier types, grouped by country.
1234567800000001234567890000NL123456789B01The Chamber of Commerce number (0106) is the standard identifier for Dutch companies on Peppol. For the Dutch government, OIN (0190) is mandatory. This is enforced by validation rule BR-NL-BFR-2 from the Basisfactuur Rijk (BFR): if the receiver is a government organisation, the schemeID must be 0190. The BFR is an additional validation set from the Dutch central government, on top of the standard NLCIUS and Peppol BIS rules, describing the minimum invoice data requirements for invoicing central government organisations.
The VAT number (9944) is used as a supplementary identifier for VAT registration but is not the primary routing identifier.
NL:KVK is a historical letter-code notation for scheme 0106. The Peppol Service Bus (PSB) treats NL:KVK:12345678 and 0106:12345678 as equivalent. In external communication (customers, partners, support tickets, documentation, sales materials) eConnect uses the official Peppol notation 0106 by default. The letter-code form still appears in older correspondence and in some integration-partner documentation.
0123456789000BE00UBLBE00001BE0123456789The enterprise number (0208) is the standard identifier for Belgian companies. Belgian organisations are typically registered with this number.
000DE00LWID00000The Leitweg-ID (0204) is the mandatory identifier for invoicing German government bodies. German companies are typically registered via their VAT number or another international identifier.
123456789The SIREN identifier (0225) is mandatory for French companies within the CTC reform (Continuous Transaction Controls), the mandatory e-invoicing being phased in from September 2026. The format can vary: a 9-digit SIREN, a 14-digit SIREN_SIRET, or extended with a routing code. Certified French platforms (PAs, formerly PDPs) must register all their end users under this schemeID. Other identifiers such as GLN (0088) may also be used alongside.
5566261920The organisationsnummer (scheme 0007) is the only valid Peppol participant identifier for Swedish parties. Scheme 9955 (SE:VAT) has been removed from the OpenPeppol EAS code list; there is no active Peppol scheme for the Swedish VAT number. The VAT number still appears in the UBL (in PartyTaxScheme/CompanyID) but is not a routing identifier.
Four country-specific Peppol BIS Billing 3.0 rules apply to Swedish suppliers and are validated automatically on submission:
PartyTaxScheme/CompanyID (VAT number)SE + 12 digitsPartyLegalEntity/CompanyID (organisationsnummer)PartyLegalEntity/CompanyIDPartyLegalEntity/CompanyIDThe 12 digits in the VAT number are built as the 10-digit organisationsnummer plus the suffix 01. The complete VAT number is therefore: SE + organisationsnummer (10 digits, no hyphen) + 01.
Enskild firma (sole proprietorship). A Swedish self-employed person does not have a separate organisationsnummer; the personal personnummer (10 digits, format YYMMDD-XXXX) acts as the organisationsnummer and is placed in the UBL without the hyphen. The VAT number is built in the same way. Example for personnummer 801007-0962:
PartyLegalEntity/CompanyID (orgnr): 8010070962PartyTaxScheme/CompanyID (VAT): SE801007096201EndpointID (Peppol ID): 0007:8010070962A common mistake is placing SE directly in front of the personnummer without the mandatory 01 suffix (result: 12 characters instead of 14). The PSB validator rejects such an invoice with an SE-R-001 message.
Privacy/GDPR: in Sweden the personnummer is personal data under the supervision of the Swedish Data Protection Authority (IMY). When an enskild firma appears on Peppol, the 10-digit organisationsnummer is effectively a personal identifier. For business traffic this is permitted under GDPR Art. 6, but publication in the public Peppol Directory can be sensitive. Customers may choose to use a GLN (scheme 0088) as their public Peppol identifier, or to skip registration in the public directory and route only via SMP. eConnect does not prescribe a policy here; the choice is up to the customer.
1234567890123123456789The GLN code (0088) is a 13-digit address code from GS1, widely used in the construction sector (DICO parties) and retail. The DUNS number (0151) is an international business identification number mainly used in larger organisations.
The OpenPeppol code list v9.6 (2026-04-07) contains no EAS code for various non-EU jurisdictions, including Curaçao and the other Caribbean parts of the Kingdom of the Netherlands. The Curaçao CRIB number (Centraal Registratie Informatie Belastingplichtige, 9 digits, issued by the Curaçao tax authority) is a tax identification number for local interaction with the government; it is not a Peppol routing identifier and cannot be used as EndpointID.
For parties from such jurisdictions that want to be reachable on the Peppol network, the following pattern applies (similar to Canada and other non-EU countries without a national EAS):
0060 (D-U-N-S, Dun & Bradstreet), 0088 (GLN, GS1) or 0199 (LEI, GLEIF).cac:PartyTaxScheme/cbc:CompanyID, but does not serve as a routing identifier.A Curaçao receiver registered with an Access Point via 0088:<GLN> is reachable via Peppol; a receiver with only a CRIB number is not and will need to be served via an alternative delivery route (email, portal, EDI).
PartyTaxScheme: TaxScheme/ID='TAX' instead of 'VAT'When the CRIB number is passed along informatively in cac:PartyTaxScheme/cbc:CompanyID, cac:TaxScheme/cbc:ID must not be set to 'VAT'. Peppol BIS Billing 3.0 rule BR-CO-09 requires that when TaxScheme/ID = 'VAT', the VAT number must start with an ISO 3166-1 country code. A CRIB number (9 digits without a country code prefix, not a VAT number format) fails that rule, even though Curaçao (CW) is listed in ISO 3166-1.
In that case, use TaxScheme/ID = 'TAX' (or 'CRIB'). BR-CO-09 triggers only on 'VAT', so the ISO country code prefix requirement does not apply to the CRIB number.
<cac:PartyTaxScheme>
<cbc:CompanyID>123456789</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>TAX</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
This TaxScheme/ID = 'TAX' pattern applies more broadly to non-EU tax identifications that do not carry an ISO 3166-1 country code prefix (for example local fiscal registration numbers). The 'VAT' code path remains reserved for formal VAT numbers with a valid country code prefix.
Curaçao has no postal codes. The Curaçao tax authority does not use a postal code system. Fill cac:PostalAddress/cbc:PostalCode with the value unknown as a default. IDR (and the recommendation for manual UBL authors) uses this value to satisfy the validator without inventing a fictional postal code.
Full example. An AccountingSupplierParty for a Curaçao supplier with CRIB number 123456789 and GLN routing elsewhere in the document:
<cac:AccountingSupplierParty>
<cac:Party>
<cac:PartyIdentification>
<cbc:ID>123456789</cbc:ID>
</cac:PartyIdentification>
<cac:PostalAddress>
<cbc:StreetName>Simplerstraat 1</cbc:StreetName>
<cbc:CityName>InvoicingStad</cbc:CityName>
<cbc:PostalCode>unknown</cbc:PostalCode>
<cac:Country>
<cbc:IdentificationCode>CW</cbc:IdentificationCode>
</cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>123456789</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>TAX</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>SimplerInvoicing</cbc:RegistrationName>
<cbc:CompanyID>123456789</cbc:CompanyID>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
EndpointID is mandatory. In Peppol BIS Billing V3, the EndpointID element must not be empty. An invoice without a valid EndpointID is rejected during validation.
One EndpointID per invoice. The UBL specification allows only one EndpointID per party. If an organisation has multiple identifiers (for example both Chamber of Commerce and OIN), choose the identifier registered with the receiver in the SMP.
Do not use "NA" as a value. Although some schemeIDs technically accept the value "NA", this leads to routing errors. Always use a valid identification number.
Invoicing individuals. For invoicing individuals without a Chamber of Commerce number, the PSB offers a workaround: use identifier 0106:99999998. This Chamber of Commerce number is excluded from network lookups, causing the invoice to always fall back to email delivery.
During delivery, the Peppol Service Bus (PSB) follows a fixed priority order to determine routing:
If none of these values is usable for network routing, delivery falls back to email routing, provided that an email address is available in the configuration.
For return messages (such as Message Level Status or Invoice Response), eConnect uses a fallback to [email protected] when the supplier's email field is missing. Status messages are therefore not lost when an AP cannot find a valid return address in the original invoice.
Technical: the complete EAS code list is available in the Peppol BIS Billing specification at
docs.peppol.eu/poacc/billing/3.0/codelist/eas/. An overview of all PartyIDs per country can be found atpsb.econnect.eu/misc/partyIds.html.
The Electronic Address Scheme (EAS) is the code list that determines which type of identifier is used to address a Peppol participant. Each EAS code represents a unique numbering system, linked to a specific country or international register. Below you will find all active codes.
78430177221200007877843017720002581281073415480790983551234567851824753556CHE1090290481234567800000001820029336000101370257457073271119633190123456789IT06363391001003704944842TST010225:123456789OMxxxxxxxxxxxxATU12345678ESA12345678BE0123456789BG123456789CZ12345678DE129390136GB123456789LU12345678NL123456789B01PL1234567890RO12345678SK1234567890The codes below are no longer registerable and are not accepted for new registrations. Existing registrations with these codes may still be active but must be migrated in due course.
When registering an organisation in the PSB, identifiers are used that are fixed per country. The table below shows the standard identifier scheme per country, including the culture codes used for registration via the Management API.
0123456789BG12345678912345678DE12939013610137025003704944842TST01123456789IT06363391001111963319LU1234567812345678745707327ATU12345678PL1234567890PT123456789RO12345678SK1234567890ESA12345678CZ12345678GB1234567892120000787When eConnect converts a PDF invoice to UBL and no valid identifier is on the invoice, default dummy values are used:
00000003999999960000000BE00UBLBE000090009999908000DE00LWID00DEF000These dummy values ensure the invoice is technically valid, but routing falls back to other fields or email delivery.
Want to check which identifier is registered for a specific receiver? Search the organisation in the Peppol Directory or use the PSB API.
Validate your invoice