Identity Verification (IDV)
Identity Verification (IDV) is a mandatory sub-process of the Onboarding workflow that uses Fourthline to perform remote identification of the user.
Triggering the Flow
The IDV flow is triggered automatically as part of the onboarding Entitlement. Your application will receive a requirementsIDV webhook when the process is ready for the user to perform identification.
When the IDV entitlement starts, a new Fourthline workflow is created automatically by the system. The unique workflow_id for this session is included directly in the webhook payload.
Client Integration
When the requirementsIDV webhook is received, your application should:
- Extract Workflow ID: The
requirementsIDVwebhook'sdetailsobject contains theworkflow_idneeded for the session. - Create a Session: Call
POST /persons/{person_id}/fourthline_workflows/{workflow_id}/fourthline_sessionsusing theworkflow_idfrom the webhook to generate a session for the user. - Facilitate Verification: Use the Fourthline SDK (on mobile) or Web SDK to allow the user to perform the identification (ID scan and selfie).
Error Handling & Retries
The IDV process includes a retry mechanism for non-terminal failures (e.g., poor image quality, blurry ID, or inconsistent data).
- Notification: If Fourthline identifies a fixable issue, the system sends an
errorIDVwebhook. - Details: The webhook payload contains specific error messages indicating what went wrong (e.g., "ID document not readable").
- Reset: The internal workflow resets the process for that user.
- New Session: Your application must respond to the
errorIDV(or subsequentrequirementsIDV) by starting the flow again:- Extract the new
workflow_idfrom the webhook. - Create a fresh Fourthline session.
- Prompt the user to re-attempt the identification.
- Extract the new
Terminal failures (e.g., fraud detection or definitive rejection) will result in a failedIDV webhook and the termination of the onboarding entitlement.
Webhook Notifications
| Webhook | Description |
|---|---|
requirementsIDV | Triggered when IDV is required. Contains the workflow_id. |
completedIDV | The IDV process was completed successfully. |
failedIDV | Terminal failure (unacceptable risk or definitive rejection). |
errorIDV | Non-terminal error. A retry is required. |