Event patterns
Which user verification events are emitted, and in what order, depends on the path the user takes through IDMe. A user who uploads their ID from a desktop emits different events from one who continues on their phone, and a user who is already verified emits far fewer events than a new user. This page shows the events for the most common journeys, so you know what to expect and can spot when an event is missing.
See User verification events for the delivery envelope, the fields every event carries, and the full list of event types.
Each pattern lists the events emitted for that journey. You only receive the events your Audience is subscribed to, and events for a user who has not yet consented are embargoed until consent is granted. See Process.
Before verification
Every journey starts with the user signing up or signing in. These events come before the verification events in each pattern below:
session.signupfor a new user, orsession.signinfor a returning usersession.verification_status- The
email.confirmation.*events, for a new user confirming their email - The
2fa.*events, as the user sets up or completes multifactor authentication
Pre-verified users
Already verified
The user already holds the identity level your policy requires. They sign in and return to your application without verifying again, so no verification events are emitted.
session.signinsession.verification_statusconsent.allow, only the first time the user shares their information with your applicationtransaction.complete
Re-running liveness
The user is already verified but is asked to confirm it’s them with a new liveness check, which they complete on their phone.
verification.transition.liveness.live_selfie_optionverification.transition.selfie.text_phone_live_selfieverification.transition.liveness.phone_livenessverification.transition.liveness.liveness_readyverification.completeconsent.allowtransaction.complete
A user re-running liveness does not repeat the document, phone, or personal information steps, so none of those events are emitted.
New users
Happy path: continue on phone
The user chooses to continue on their phone, captures their ID and completes a liveness check there, and passes every check on the first try. This is the default path for a new user.
verification.transition.documents.text_phone: the user chooses to continue on their phoneverification.transition.documents.polling_documents: waiting for the photos from the phoneverification.transition.liveness.phone_liveness: document accepted, liveness check on the phoneverification.transition.liveness.liveness_readyverification.transition.authoritative_records.social_info: Social Security number entryverification.transition.authoritative_records.review_info: the user reviews the information read from their IDverification.transition.telecom.utility_verify: phone checkverification.transition.authoritative_records.verify_nameverification.completeconsent.allowtransaction.complete
Because the user continued on their phone, the phone they used is already confirmed, so no telecom.phone_info step is shown.
Upload on desktop
The user doesn’t continue on their phone. They capture their ID and complete a liveness check with their computer’s webcam.
verification.transition.documents.text_phone: the user is offered to continue on their phoneverification.transition.documents.document_review: the user chooses to continue on the computer and captures their IDverification.transition.documents.document_verifyverification.transition.selfie.selfie_optionverification.transition.liveness.webcam_livenessverification.transition.liveness.liveness_readyverification.transition.telecom.phone_info: phone number entryverification.transition.authoritative_records.social_infoverification.transition.authoritative_records.review_infoverification.transition.telecom.utility_verifyverification.transition.authoritative_records.verify_nameverification.completeconsent.allowtransaction.complete
Variations
Small differences in the path change which events you receive:
Fail to supervised path
After an unsupervised failure
The user can’t complete self-service verification, for example because their document can’t be verified, and is offered a video call with an IDMe agent instead.
- The verification events up to the step that failed, as in New users
- A failure event, such as
verification.transition.documents.failed_document appointment.start: the user chooses to verify on a video call- The
supervised.appointments.*events, if the user schedules an appointment consent.allow: after the agent approves the verificationtransaction.complete
The failure event depends on the step that failed:
verification.complete is not emitted when an agent completes the verification on a video call. Use consent.allow and transaction.complete to tell that the user finished.
Choosing a video call
The user chooses to verify on a video call from the verification options screen, instead of starting self-service verification.
verification.optionsverification.choice.dtr_fullappointment.start- The
supervised.appointments.*events, if the user schedules an appointment consent.allowtransaction.complete