---
title: "Register Tenant Peppol"
method: POST
path: "/api/admin/tenants/{tenant_id}/peppol/register"
tags: ["Admin"]
---

# Register Tenant Peppol

`POST /api/admin/tenants/{tenant_id}/peppol/register`

Register a tenant on the Peppol network (idempotent).

Performs end-to-end registration for Belgian companies including:
- KBO data fetching
- Hermes migration or direct SMP registration
- Business card creation
- Default document type endpoints

## Path parameters

- `tenant_id` string, required

## Request body

- PeppolRegistrationRequest
  - `peppol_id` string, required — Peppol ID (must be 0208:<digits> for Belgium)
  - `dry_run` boolean — If true, perform a dry run without making changes

## Response `200`

Successful Response

- PeppolRegistrationResponse
  - `success` boolean, required
  - `peppol_id` string, required
  - `company_data` CompanyData, required
    - `company_number` string, nullable
    - `company_name` string, nullable
    - `company_country` string, nullable
    - `company_address` string, nullable
    - `company_zip` string, nullable
    - `company_city` string, nullable
    - `status` string, nullable
    - `juridical_situation` string, nullable
    - `type_of_enterprise` string, nullable
    - `juridical_form` string, nullable
    - `start_date` string, nullable
    - `address_type` string, nullable
  - `registration` RegistrationResult, required
    - `registered` boolean, required
    - `method` string, nullable
    - `migration_result` object, nullable
    - `message` string, nullable
  - `business_card` BusinessCardResult, required
    - `success` boolean, required
    - `business_card_data` object, nullable
    - `message` string, nullable
    - `error` string, nullable
    - `error_type` string, nullable
    - `dry_run` boolean, nullable
  - `document_endpoints` DocumentEndpointsResult, required
    - `success` boolean, required
    - `message` string, nullable
    - `error` string, nullable
    - `error_type` string, nullable
    - `dry_run` boolean, nullable

## Other responses

- `400` — Bad Request: Invalid input parameters
- `401` — Unauthorized: Invalid or missing admin key
- `403` — Forbidden: Peppol operations not available for organizations in test mode
- `404` — Not Found: Tenant not found
- `409` — Conflict: Participant already registered on Peppol or multiple Peppol IDs would apply for tenant
- `422` — Validation Error
- `500` — Internal Server Error: Unexpected server error
- `502` — Bad Gateway: External services (Hermes/SMP) failed

---

[API](https://skmtc.net/e-invoice-be/apis/e-invoice-be-peppol-access-point-api.md) · [All operations](https://skmtc.net/e-invoice-be/apis/e-invoice-be-peppol-access-point-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/e-invoice-be/e-invoice-be-peppol-access-point-api/revisions/a5b8396effe8/schema)
