Identifications
Manage your KYC dossier — the legal entity MyTPE verifies before activation.
An identification is your KYC dossier. It references an establishment type, an authorization type,
an optional activity, and an optional registration document. It must be accepted before it can
back a payment instance.
Statuses reference
Identification status values (pending, accepted, refused) are defined in
Statuses & enums → KYC.
Endpoints
| Method | Path | Description |
|---|---|---|
GET | /identifications | List identifications (paginated). |
POST | /identifications | Create an identification. |
GET | /identifications/{id} | Retrieve one identification. |
PUT | /identifications/{id} | Update an identification. |
DELETE | /identifications/{id} | Delete an identification. |
The identification object
| Field | Type | Description |
|---|---|---|
id | string (uuid) | Unique identifier. |
name | string | Legal / commercial name. |
establishment_type | object | { id, name, slug } when loaded. |
authorization_type | object | null | { id, name, slug } when loaded. |
activity | object | null | { id, name } when loaded. |
has_file | boolean | Whether a registration document is attached. |
file_path | string | null | Path to the stored document. |
status | string | KYC status — see statuses. |
reason | string | null | Reason when refused. |
created_at / updated_at | string (ISO 8601) | Timestamps. |
List identifications
Query parameters: search, status, establishment_type_id, sort_by
(created_at · name · status), sort_dir (asc · desc), per_page.
curl "https://api.mytpe.appp/api/ext/identifications?status=accepted&per_page=15" \
-H "X-Api-Key: $MYTPE_API_KEY" \
-H "X-Api-Secret: $MYTPE_API_SECRET"{
"data": [
{
"id": "0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f",
"name": "Boutique Centrale SARL",
"establishment_type": { "id": "2f1c...", "name": "SARL", "slug": "sarl" },
"authorization_type": { "id": "7a9d...", "name": "Registre de commerce", "slug": "rc" },
"activity": { "id": "c4e2...", "name": "Retail" },
"has_file": true,
"file_path": "identifications/0b1d.../registre.pdf",
"status": "accepted",
"reason": null,
"created_at": "2026-06-09T10:00:00.000000Z",
"updated_at": "2026-06-09T11:00:00.000000Z"
}
],
"links": { "first": "...?page=1", "last": "...?page=1", "prev": null, "next": null },
"meta": { "current_page": 1, "from": 1, "to": 1, "per_page": 15, "last_page": 1, "total": 1 }
}Create an identification
Send as multipart/form-data to include the document.
| Field | Type | Required | Notes |
|---|---|---|---|
name | string | yes | Max 255. |
establishment_type_id | uuid | yes | |
authorization_type_id | uuid | yes | |
activity_id | uuid | no | |
identification_file | file | no | PDF, max 5 MB. |
curl -X POST https://api.mytpe.appp/api/ext/identifications \
-H "X-Api-Key: $MYTPE_API_KEY" \
-H "X-Api-Secret: $MYTPE_API_SECRET" \
-F "name=Boutique Centrale SARL" \
-F "establishment_type_id=2f1c..." \
-F "authorization_type_id=7a9d..." \
-F "activity_id=c4e2..." \
-F "identification_file=@registre-commerce.pdf"{
"data": {
"id": "0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f",
"name": "Boutique Centrale SARL",
"establishment_type": { "id": "2f1c...", "name": "SARL", "slug": "sarl" },
"authorization_type": { "id": "7a9d...", "name": "Registre de commerce", "slug": "rc" },
"activity": { "id": "c4e2...", "name": "Retail" },
"has_file": true,
"file_path": "identifications/0b1d.../registre.pdf",
"status": "pending",
"reason": null,
"created_at": "2026-06-09T10:00:00.000000Z",
"updated_at": "2026-06-09T10:00:00.000000Z"
}
}A first brand is created automatically with the same name.
Retrieve an identification
curl https://api.mytpe.appp/api/ext/identifications/0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f \
-H "X-Api-Key: $MYTPE_API_KEY" \
-H "X-Api-Secret: $MYTPE_API_SECRET"{
"data": {
"id": "0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f",
"name": "Boutique Centrale SARL",
"establishment_type": { "id": "2f1c...", "name": "SARL", "slug": "sarl" },
"authorization_type": { "id": "7a9d...", "name": "Registre de commerce", "slug": "rc" },
"activity": { "id": "c4e2...", "name": "Retail" },
"has_file": true,
"file_path": "identifications/0b1d.../registre.pdf",
"status": "accepted",
"reason": null,
"created_at": "2026-06-09T10:00:00.000000Z",
"updated_at": "2026-06-09T11:00:00.000000Z"
}
}A missing or foreign id returns 404 with { "error": "IDENTIFICATION_NOT_FOUND", "message": "Identification not found." }.
Update an identification
Accepts the same fields as create (as multipart/form-data).
curl -X PUT https://api.mytpe.appp/api/ext/identifications/0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f \
-H "X-Api-Key: $MYTPE_API_KEY" \
-H "X-Api-Secret: $MYTPE_API_SECRET" \
-F "name=Boutique Centrale SARL (Alger)"{
"data": {
"id": "0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f",
"name": "Boutique Centrale SARL (Alger)",
"status": "pending",
"reason": null,
"has_file": true,
"created_at": "2026-06-09T10:00:00.000000Z",
"updated_at": "2026-06-09T12:00:00.000000Z"
}
}Delete an identification
curl -X DELETE https://api.mytpe.appp/api/ext/identifications/0b1d2e3f-4a5b-6c7d-8e9f-0a1b2c3d4e5f \
-H "X-Api-Key: $MYTPE_API_KEY" \
-H "X-Api-Secret: $MYTPE_API_SECRET"{ "message": "Identification deleted." }You cannot delete an identification that a brand, bank account, or payment instance still depends on.