When you register a mandate, the API maps it to a Peppol electronic address — the identifier used to route invoices across the Peppol network. Understanding this mapping is essential to populating your XML invoices correctly.
All French entities are addressed using Peppol scheme 0225 (FRCTC), defined in AFNOR XP Z12-014 Annex A. The identifier value is derived from the mandate's directory entry fields, following the same four-tier structure as the French PPF/AIFE directory.
| Mandate type | Directory entry fields | Peppol electronic address |
|---|---|---|
| SIREN | siren | 0225:<siren> |
| SIREN + suffix | siren + suffix | 0225:<siren>_<suffix> |
| SIRET | siren + siret | 0225:<siret> |
| SIRET + routing code | siren + siret + routing_identifier | 0225:<siret>_<routing_identifier> |
| Mandate directory entry | Peppol electronic address |
|---|---|
siren: "884553033" | 0225:884553033 |
siren: "884553033", suffix: "Achats" | 0225:884553033_Achats |
siret: "88455303300017" | 0225:88455303300017 |
siret: "88455303300017", routing_identifier: "GLN-123" | 0225:88455303300017_GLN-123 |
Belgian entities use scheme 0208 (VAT Registration Number), with the BCE number (10 digits, without the BE prefix):
| Directory entry | Peppol electronic address |
|---|---|
siren: "0878065378" (BE) | 0208:0878065378 |
When you call POST /invoicing/files/submit, the API extracts the sender's Peppol electronic address from the invoice XML and checks it against the active mandates of the requesting client (X-PDP-Client-Id).
The check verifies that:
- The mandate belongs to the requesting client
- The mandate status is
CREATEDorACTIVE start_date≤ today ≤end_date(or noend_date)
If no active mandate matches the sender address extracted from the invoice, the request is rejected with a 403 error.
This means the electronic address you set in your invoice XML must exactly match the Peppol address derived from one of your active mandates.
In UBL, the electronic address is carried in the EndpointID element of both the supplier and customer party, with a schemeID attribute.
Seller (BT-34) — AccountingSupplierParty:
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="0225">884553033</cbc:EndpointID>
<!-- ... -->
</cac:Party>
</cac:AccountingSupplierParty>Buyer (BT-49) — AccountingCustomerParty:
<cac:AccountingCustomerParty>
<cac:Party>
<cbc:EndpointID schemeID="0225">88455303300017</cbc:EndpointID>
<!-- ... -->
</cac:Party>
</cac:AccountingCustomerParty>For a SIREN + suffix mandate:
<cbc:EndpointID schemeID="0225">884553033_Achats</cbc:EndpointID>For a Belgian entity:
<cbc:EndpointID schemeID="0208">0878065378</cbc:EndpointID>In CII, the electronic address is carried in URIUniversalCommunication/URIID inside the trade party elements.
Seller — SellerTradeParty:
<ram:SellerTradeParty>
<ram:URIUniversalCommunication>
<ram:URIID schemeID="0225">884553033</ram:URIID>
</ram:URIUniversalCommunication>
<!-- ... -->
</ram:SellerTradeParty>Buyer — BuyerTradeParty:
<ram:BuyerTradeParty>
<ram:URIUniversalCommunication>
<ram:URIID schemeID="0225">88455303300017</ram:URIID>
</ram:URIUniversalCommunication>
<!-- ... -->
</ram:BuyerTradeParty>Both elements are found under:
rsm:CrossIndustryInvoice
> rsm:SupplyChainTradeTransaction
> ram:ApplicableHeaderTradeAgreement
> ram:SellerTradeParty / ram:BuyerTradeParty
> ram:URIUniversalCommunication
> ram:URIID| Mandate type | schemeID | Value format | XML element (UBL) | XML element (CII) |
|---|---|---|---|---|
| SIREN | 0225 | 9-digit SIREN | cbc:EndpointID | ram:URIID |
| SIREN + suffix | 0225 | <SIREN>_<suffix> | cbc:EndpointID | ram:URIID |
| SIRET | 0225 | 14-digit SIRET | cbc:EndpointID | ram:URIID |
| SIRET + routing code | 0225 | <SIRET>_<routing_code> | cbc:EndpointID | ram:URIID |
| Belgian BCE | 0208 | 10-digit BCE | cbc:EndpointID | ram:URIID |