When creating a user file, it is mandatory to specify one or more callback_endpoints, i.e. URLs to which ID360 will automatically send notifications (via HTTP POST) throughout the identification process.
Each callback_endpoint will receive a payload containing information related to the file, including its status and the steps completed by the user.
You can define one or more callback URLs. For each callback, you can specify the desired notification level:
Note that in some cases, intermediate callbacks may arrive after the final callback. This can happen if the initial callback attempt failed (e.g. your server was temporarily unavailable): ID360 will then perform automatic retries to ensure proper delivery.
These retries may cause a temporal mismatch in the order of received messages.
→ It is therefore strongly recommended to rely on the content of the payload rather than the order in which notifications arrive.
As a trusted service provider, we must comply with applicable standards, including ETSI EN 319 401, which requires the use of the latest versions of TLS to ensure the security and reliability of our exchanges.
We recommend verifying that your connection is correctly configured to support TLSv2 or TLSv3.
If you wish to allowlist our IP addresses, please contact your Customer Success Manager, who will provide them to you.
At each step completed by the user, you will receive intermediate callback notifications informing you of the nature and status of that step.
The status of an intermediate callback will always be set to “STARTED”.
The steps_status block indicates that a total of 7 control steps were identified for the process associated with this payload.
The value done = 1 means that only the ProfileDataStep (e.g. pushing the last name via API) has been completed.
The enrollment_step field provides detailed information about the step, including the result, the type of verification performed, and the list of documents involved.
Note: The “type” present in the `enrollment_step` variable is for internal use only and should not be used or relied upon.
| ‘enrollment_step’ > ‘name’ | Document(s) | Control / Note |
|---|---|---|
| id_document | Identity document | The ID document has been successfully received and read |
| id_document_mandate | ID (from KBIS) | The mandate ID was successfully received and read |
| fake_photo_id | ID document | The photo on the ID document is valid |
| phone_detection | ID document | Presentation attack detection was successfully completed |
| image_forensics | ID document | Monochrome detection completed successfully |
| ‘enrollment_step’ > ‘name’ | Document(s) | Control / Note |
|---|---|---|
| ar24 | PVID | AR24 has provided ID360 with the enrollment results |
| france_connect | France Connect | France Connect has shared the enrollment results |
| france_connect_plus | France Connect+ | France Connect+ has shared the enrollment results |
| id_num | La Poste ID | La Poste Digital Identity has shared the enrollment data |
| ‘enrollment_step’ > ‘name’ | Document(s) | Control / Note |
|---|---|---|
| facecomparison | Selfie + ID document | Selfie image extracted from video was successfully received |
| liveness | Selfie | Challenge videos received for liveness detection |
| ‘enrollment_step’ > ‘name’ | Document(s) | Control / Note |
|---|---|---|
| property_tax_notice | Property tax notice | Document successfully received and read |
| proof_of_address | Proof of address | Document successfully received and read |
| pay_slip | Payslip | Document successfully received and read |
| kbis | KBIS extract | Document successfully received and read |
| income_tax_notice | Income tax notice | Document successfully received and read |
| bank_details | Bank statement (RIB) | Document successfully received and read |
| free_document | Free document | Document successfully received and read |
| mandate | Mandate (linked to KBIS) | Document successfully received and read |
| ‘enrollment_step’ > ‘name’ | Document(s) | Control / Note |
|---|---|---|
| phone | Phone number | User provided their phone number |
| otp | OTP code | User successfully entered the OTP code |
| Email address | User provided their email address |
The final callback notifies you of the completion of the identification process and provides final status details.
The status of a final callback can be: OK, KO, FAILED or CANCELED
In case of a KO, the reason field will explain the failure cause.
In `steps_status`, the value `done` will equal the value `total`.
In this case, you must return a 2XX status code (e.g. 204) within 10 seconds.
If this response is not received, up to 6 additional retry attempts will be made according to the following schedule:
| Attempt | Seconds | Minutes | Cumulative Minutes |
|---|---|---|---|
| 1 | 10 | 0.17 | 0.17 |
| 2 | 80 | 1.33 | 1.50 |
| 3 | 270 | 4.50 | 6.00 |
| 4 | 640 | 10.67 | 16.67 |
| 5 | 1250 | 20.83 | 37.50 |
| 6 | 2160 | 36.00 | 73.50 |
| 7 | 3430 | 57.17 | 130.67 |
These intervals follow the formula: `10 x (n+1)^3` (where `n` is the retry number), expressed in seconds.
In the body when creating a user file:
"callback_endpoints": [
{
"url": "https://your-server.com/callback",
"on": [
"F"
],
"headers": [
{
"name": "Authorization", value: "Bearer abc123"
}
]
}
]
url: the POST endpoint address to be called when an event is triggered. on: list of statuses for which this callback will be executed. headers: list of custom headers to include in the request (e.g., authentication, trace, etc.).F – Failed C – Canceled E – End (OK or KO) I – Intermediate UP – Mie User Processing SP – Mie Sys Processing callback_endpoints list. on.