Humanness
The hosted flow runs a liveness check using the device camera — a short, guided capture that confirms a real, present person, not a photo, a video replay, a mask, or a generated face. We score the capture for confidence; below the threshold, the verification doesn’t pass. Because liveness needs a real camera in good conditions, the best place to run it is a phone — so the flow is camera-first and mobile-first.Desktop to mobile handoff
If someone starts on a desktop, we don’t dead-end them at a weak webcam. We hand the session off to their phone and bring them back automatically:Phone claims it
The user scans the code and continues the camera step on their phone. The two devices are bound to the same session.
Uniqueness
Once we know the person is live, we check that they’re new. From the liveness capture we derive a privacy-preserving face representation and search it against the people who’ve already verified. A confident match is a collision — the same human has been here before — and the verification is denied as not unique. This is what lets you say “one real human, once” — no duplicate accounts, no one slipping through twice, no second submission from the same face.Uniqueness is scoped to who you compare against — the uniqueness pool. Who a
person is deduped against, and how long they stay in the pool, depends on
whether they verified as an account or a guest. See
Accounts vs guests.
What you get back
A confirmation reportsverified: true only when the person cleared both checks — live and unique. You confirm that result on your backend; see Confirmations.