Skip to main content
Once a Face Match session is complete, use the Verisoul API to verify the user and enroll them for future multi-accounting detection. There are two integration patterns depending on how often you check a given user. Choose the one that matches your use case.

Single Verification

You check a user only once. Verify, then Enroll.

Repeat Verification

You check the same user more than once. Enroll first, then Verify.

Single Verification

Use this pattern when a given user goes through Face Match exactly once and you will not re-check them. Common use cases
  • One-time uniqueness + liveness check at onboarding
  • Bot / sybil gate at sign-up
1

Verify

Call /verify-face to get the user’s Decision, Risk Score, and Risk Flags. See Response Signals for how to interpret everything the endpoint returns.
2

Enroll

Call Enroll to tie the session to your account_id. This lets Verisoul match future sessions against enrolled accounts to prevent repeat devices and repeat faces from signing up.
Sessions must be enrolled within 30 days of creation. Attempting to enroll a session older than 30 days will return a session_older_than_30_days error.

Repeat Verification

Use this pattern when the same user is checked more than once — for example when you run both Face Match and ID Check on a user, or re-verify a returning user. Common use cases
  • Running both Face Match and ID Check on the same user
  • Re-checking returning users at sign-in, withdrawals, or large transactions
  • Fast-track level upgrades where a user re-verifies to raise their trust level
Enroll before you Verify. If you Verify first, the user’s earlier enrolled session is treated as a separate account, so the Decision may flag them for multi-accounting (e.g. a repeat face match) against themselves. Enrolling first ties the new session to the same account_id so Verisoul recognizes it as the same user.
1

Enroll

Call Enroll to tie the new session to the same account_id the user already uses. Verisoul now knows this session belongs to an existing account.
Sessions must be enrolled within 30 days of creation. Attempting to enroll a session older than 30 days will return a session_older_than_30_days error.
2

Verify

Call /verify-face to get the user’s Decision, Risk Score, and Risk Flags. Because the session is already enrolled, prior sessions are recognized as the same account and are not counted against the user. See Response Signals for details.
For strict 1:1 sign-in authentication (matching a returning user against their own enrolled face), see Authentication, which uses the /verify-identity endpoint.

API Reference

For complete details on all available endpoints and parameters, see the Face Match API Reference.