Start inbound migration
Migrate a French company's Peppol registration into Docnova using the migration key issued by its current Plateforme Agréée (PA)/PDP.
This is the France-specific usage of the generic Start inbound migration endpoint. For the full generic field reference and error table, see Global-White Label Partner → Peppol Migration → Start inbound migration.
Why this exists
When a French company signs an accord formel moving to Docnova, the AIFE "Processus de choix de PA et mobilité" (chapters 5–6) requires the previous PA to hand over a code de migration Peppol (Tableau 7, field 18: Code_mig_peppol) so the Peppol network's SMP reroutes the company's address to Docnova. This endpoint is where that key is submitted — Docnova is acting as the new PA.
This is separate from, and in addition to, the PPF annuaire takeover itself (the AIFE "Étape 5 — Mise à jour de l'annuaire" step, done via the PPF annuaire API, not this endpoint).
Endpoint
| Property | Value |
|---|---|
| URL | POST /peppol/migration/inbound/start |
| Method | POST |
| Auth | R-Auth: <partner-jwt> (the associated company must have a user with SUPER_OWNER admin authority) |
| Content-Type | application/json |
| Base URL | Stage Environment https://api-fr-stage.docnova.ai/ Production Environment https://api-fr.docnova.ai/ |
Example Request
The previous PA has already emailed back a Code_mig_peppol value for this SIREN.
curl --location 'https://api-fr-stage.docnova.ai/peppol/migration/inbound/start' \
--header 'Content-Type: application/json' \
--header 'R-Auth: {{partnerJwt}}' \
--data '{
"companyId": "0ddae57b-673a-45fa-ad1f-e7c52827b44a",
"icd": "0225",
"specialIdentifier": "",
"businessIdentifier": "503694523",
"migrationKey": "A8F5D2K9L7YHD56FVO0PAZ"
}'
Request body
{
"companyId": "string (UUID)",
"icd": "string",
"specialIdentifier": "string",
"businessIdentifier": "string",
"migrationKey": "string"
}
Request fields (France mapping)
| Field | Type | Required | France value |
|---|---|---|---|
companyId | UUID | Yes | The Docnova company the participant will be registered under. |
icd | string | Yes | 0225 — the French SIRENE registry scheme. |
specialIdentifier | string | No | Empty for a SIREN-level (entreprise) address; a SIRET/suffix fragment for établissement-level addressing. |
businessIdentifier | string | Yes | The company's SIREN (9 digits), or SIREN+SIRET depending on specialIdentifier. |
migrationKey | string | Yes | The value the previous PA sent as Code_mig_peppol in their mobility response (Tableau 7, field 18) — not a Docnova-issued value. |
The full Peppol participant ID is composed internally as iso6523-actorid-upis::0225:{specialIdentifier}{businessIdentifier}.
Response
200 OK
success
Response fields
Plain text body; no structured fields. success confirms Docnova has submitted the inbound migration record to its SMP and begun the participant's document setup.
Error Codes
| HTTP Status | Error | Description |
|---|---|---|
400 | Validation error | A required field is missing or malformed. |
401 / 403 | Unauthorized | Missing/invalid R-Auth token, or the associated user lacks SUPER_OWNER admin authority. |
500 | PEPPOL_PARTICIPANT_MIGRATION_FAILED | "Peppol participant migration failed! Error: %s" — the SMP rejected the migration key, or the key is invalid, expired, or does not match the participant ID. |
Related
- Overview — authentication model, base URLs, general France-Integration conventions
- Submit register request — for a company with no existing Peppol registration to migrate from
- Start outbound migration — the reverse flow