SML lookup
This endpoint allows customers to check whether a specific participant is registered in the Peppol Service Metadata Locator (SML). The lookup is based on the participant identifier scheme and id.
The API returns a 200 OK response if the participant exists in the SML, or 404 Not Found if the participant is not registered.
Endpoint
Section titled “Endpoint”- Method: GET
- Path:
/v3/sml-lookup
Full URLs
- Test:
https://apitest.4exchange.app/v3/sml-lookup - Production:
https://api.4exchange.app/v3/sml-lookup
Request
Section titled “Request”Query parameters
Section titled “Query parameters”scheme(string, required): Identifier scheme (e.g., 0106, 9924).id(string, required): Participant identifier value (e.g. 09135999).
For more information about Peppol identifier schemes, refer to the official Peppol documentation.
Headers
Section titled “Headers”- Authorization: Bearer token (requires
4Exchange/sendscope)
Request body
Section titled “Request body”none
Responses
Section titled “Responses”200 OK
Section titled “200 OK”- 200 OK
{
"code": "200",
"status": "success",
"message": "Participant identifier found in the SML.",
"data": {
"participants": [
{
"name": "unknown",
"identifier": "0106:09135999",
"active": true,
"documentTypes": [
{
"id": 170,
"commonName": "SI-UBL 2.0 Invoice"
},
{
"id": 158,
"commonName": "PEPPOL BIS Billing v 3 Invoice UBL"
}
],
"smp": "https://smp.tradeinterop.com",
"smpData": {
"serviceDescription": "4CEE (Tradeinterop) PEPPOL Accesspoint",
"technicalContactUrl": "peppolregistration@4cee.com",
"technicalInformationUrl": "https://www.4cee.com/",
"endpointReference": "https://tradeinterop.prod.peppol.tradeinterop.com/as4",
"organization": "4CEE",
"certificate": {
"apIdentifier": "PNL000059",
"environment": "PEPPOL PRODUCTION AP",
"validFrom": "Mar 16 00:00:00 2026 GMT",
"validTo": "Mar 4 23:59:59 2028 GMT"
}
}
}
]
}
}
Note on participant name
Section titled “Note on participant name”The Peppol SML does not store organization names. It only maps participant identifiers to their SMP. Therefore the response shows "name": "unknown".
401 Unauthorized
Section titled “401 Unauthorized”- 401 Unauthorized
{
"message": "Unauthorized"
}
404 Not Found
Section titled “404 Not Found”- 404 Not Found
Example: /v3/sml-lookup?scheme=0106&id=1234
{
"Error": "'Participant 0106:1234 not found'"
}
400 Bad Request
Section titled “400 Bad Request”- 400 Bad Request
Example: /v3/sml-lookup?scheme=0106
{
"message": "Missing required request parameters: [id]"
}
