Quick Start
This guide walks through the standard registration path: register a user, then verify their identity in a second phase. All steps need only your ApiKey header until verification — then the user token from StepCreate.
Users with hasCDI: true should use Consent-based Digital Identity (CDI) instead — they skip steps 3–5 in this guide.
The ApiKey goes in every request as a header. The user accessToken (returned by StepCreate) is used as Authorization: Bearer <token> for the verification steps.
1. Check phone and email availability
Before registering, confirm the phone number and email are not already in use.
If the phone or email is already in use, the response will indicate it — redirect the user to login instead.
2. Register the user
Registration is three calls: send phone OTP → validate OTP → create account.
cURL
JavaScript
Python
data.accessToken from StepCreate is the user token — pass it as Authorization: Bearer <token> in steps 3–5.
3 – 5. Verify identity
With the user token, scan the national ID and run liveness detection.
cURL
JavaScript
Python
When data.isDigitalIdentityVerified is true, the user is fully verified and eligible to create contracts.
Next steps
Login flow, token refresh, update email/phone, and password reset.
Full verification guide — extracted fields, error handling, and edge cases.
Create and sign FRA-compliant contracts once the user is verified.
Complete HTTP and VLens error code reference.

