Duplicate verification sessions waste money, confuse users, and create data quality issues. This guide covers strategies for preventing duplicates at every layer.
The most reliable way to prevent duplicate session creation is the
Idempotency-Key header. If a network error occurs and you retry the request,
Verifa returns the original response instead of creating a second session.
Key design tips:
signup_\{user_id\} or
reverify_\{user_id\}_\{date\})See Idempotency for the full specification.
Always set external_ref to your internal user ID when creating sessions. This:
Before creating a new session, check if the user already has an active one:
If an active session exists, resume it instead of creating a new one:
When a user’s session expires (they took too long), resume it rather than creating a new session:
This re-issues a capture token and preserves any documents already uploaded.
Verifa automatically detects when the same person verifies under different
external_ref values. The duplicate_detection check searches across all
previous sessions using:
When duplicates are detected, the signals appear in the risk assessment and can route the session to manual review.
Prevent the user from clicking “Start Verification” multiple times:
Store the session ID locally so refreshing the page doesn’t trigger a new session:
In rare cases, you may receive the same webhook event more than once. Use the
session_id to deduplicate: