Participants
This endpoint allows customers to manage participants on our Peppol Service Metadata Publisher (SMP). You can add new participants, update existing participant details, or remove participants from the Peppol network.
Add new receiving participant
Section titled “Add new receiving participant”Endpoint
Section titled “Endpoint”- Method: POST
- Path:
/v3/participant
Full URLs
- Test:
https://apitest.4exchange.app/v3/participant - Production:
https://api.4exchange.app/v3/participant
Request
Section titled “Request”Headers
Section titled “Headers”- Authorization: Bearer token (requires
4Exchange/participantscope) - Content-Type: application/json
Request body
Section titled “Request body”{
"name": "4CEE B.V.",
"countryCode": "NL",
"identifier": "0106:09135999",
"documentTypes": [158, 160, 170, 171]
}
Peppol Document Types
Section titled “Peppol Document Types”158- Peppol BIS Billing UBL Invoice V3160- Peppol BIS Billing UBL Credit Note V3170- SI-UBL 2.0 Invoice171- SI-UBL 2.0 Credit Note220- SI-UBL 2.0 G-Account Extension299- Peppol BIS Self-Billing UBL Invoice V3 (only passthrough, no conversion)300- Peppol BIS Self-Billing UBL Credit Note V3 (only passthrough, no conversion)
Responses
Section titled “Responses”200 OK
Section titled “200 OK”- 200 OK
{
"code": "201",
"status": "success",
"message": "Participant identifier \"0106:09135999\" was successfully added in the SML, SMP and will be in the Peppol Directory (async)."
}
400 Bad Request
Section titled “400 Bad Request”- 400 Bad Request
{
"Error": "The participant identifier \"0106:09135999\" was not successfully registered. Error is: {\"BadRequestFault\":{\"FaultMessage\":\"[ERR-106] The participant identifier [0106:09135999] with scheme: [iso6523-actorid-upis] already exist with naptr service [Meta:SMP] on subdomain: [acc.edelivery.tech.ec.europa.eu]\""
}
400 Bad Request
Section titled “400 Bad Request”- 400 Bad Request
{
"message": "Invalid request body",
"error": "[object has missing required properties ([\"countryCode\",\"documentTypes\",\"identifier\"])]"
}
401 Unauthorized
Section titled “401 Unauthorized”- 401 Unauthorized
{
"message": "Unauthorized"
}
Update an existing participant
Section titled “Update an existing participant”Endpoint
Section titled “Endpoint”- Method: PUT
- Path:
/v3/participant/{identifier}
Full URLs
- Test:
https://apitest.4exchange.app/v3/participant/{identifier} - Production:
https://api.4exchange.app/v3/participant/{identifier}
Request
Section titled “Request”Headers
Section titled “Headers”- Authorization: Bearer token (requires
4Exchange/participantscope) - Content-Type: application/json
Path parameters
Section titled “Path parameters”identifier(string, required): The identifier of the participant to update.
Example: PUT /v3/participant/0106:09135999
Request body
Section titled “Request body”{
"name": "4CEE B.V.",
"countryCode": "NL",
"documentTypes": [158, 160]
}
Responses
Section titled “Responses”200 OK
Section titled “200 OK”- 200 OK
{
"code": "201",
"status": "success",
"message": "Participant identifier \"0106:09135999\" was successfully updated in the SMP and will be updated in the Peppol Directory (async)."
}
400 Bad Request
Section titled “400 Bad Request”- 400 Bad Request
{
"message": "Invalid request body",
"error": "[object has missing required properties ([\"countryCode\",\"documentTypes\",\"identifier\"])]"
}
401 Unauthorized
Section titled “401 Unauthorized”- 401 Unauthorized
{
"message": "Unauthorized"
}
Get all participants
Section titled “Get all participants”Endpoint
Section titled “Endpoint”- Method: GET
- Path:
/v3/participant
Full URLs
- Test:
https://apitest.4exchange.app/v3/participant - Production:
https://api.4exchange.app/v3/participant
Request
Section titled “Request”Headers
Section titled “Headers”- Authorization: Bearer token (requires
4Exchange/participantscope)
Responses
Section titled “Responses”200 OK
Section titled “200 OK”- 200 OK
Returns all active Peppol Participant registrations under the tenant.
[
{
"name": "4CEE B.V.",
"countryCode": "NL",
"identifier": "0106:09135999",
"documentTypes": [158, 160, 170, 171]
},
{
"name": "Diesis B.V.",
"countryCode": "NL",
"identifier": "0106:34236560",
"documentTypes": [158, 160, 170, 171]
}
]
401 Unauthorized
Section titled “401 Unauthorized”- 401 Unauthorized
{
"message": "Unauthorized"
}
Delete a participant
Section titled “Delete a participant”Endpoint
Section titled “Endpoint”- Method: DELETE
- Path:
/v3/participant/{identifier}
Full URLs
- Test:
https://apitest.4exchange.app/v3/participant/{identifier} - Production:
https://api.4exchange.app/v3/participant/{identifier}
Request
Section titled “Request”Headers
Section titled “Headers”- Authorization: Bearer token (requires
4Exchange/participantscope) - Content-Type: application/json
Path parameters
Section titled “Path parameters”identifier(string, required): The identifier of the participant to delete.
Example: DELETE /v3/participant/0106:09135999
Responses
Section titled “Responses”200 OK
Section titled “200 OK”- 200 OK
{
"code": "201",
"status": "success",
"message": "Participant identifier \"0106:09135999\" was successfully deleted from the SML and will be deleted from the Peppol Directory (async)."
}
401 Unauthorized
Section titled “401 Unauthorized”- 401 Unauthorized
{
"message": "Unauthorized"
}
