A verification is the unit of work the platform runs against one
applicant. You create a verification from a workflow template, send the
applicant an invite, watch the verification progress, and read the
verdict. This page walks the whole loop in test mode.

## Before you start

You need an active organization, the `org:member` role or higher, and
the console open in test mode. Test mode is the default for new
accounts; the mode picker is in the top bar.

If you have not signed up yet, start with
[Create your account](/guides/getting-started/sign-up).

## Pick or create a workflow template

A workflow template captures which checks run and in what order
(identity document, selfie, address, watchlist, background). Open
**Workflows**. You see a starter workflow template shipped with every
new organization. Either pick it and continue, or click
**New workflow** to name one and pick check types from the catalog.
See [Create a workflow template](/guides/workflows/workflow-templates-create) for the full
reference.

## Create the verification

Open **New applicant** and pick:

- **Workflow**: the one you chose above.
- **Reference**: your own identifier (a user id, an order number,
  whatever you correlate against in your systems).
- **Applicant email**: used to deliver the invite. In test mode this
  defaults to a sink address; you can override it with a real address
  you control.

Submit the form. The verification is created and the applicant invite is
sent. In code, the same operation is `POST /v1/sessions` against the
[public API](/reference): one call can both create the applicant (inline
`applicant` fields, instead of a separate applicant-create step) and start
the workflow template you picked above (by its id). A workflow template
you author through the API can launch a verification the same way, so the
console and the API produce the same result from either starting point.

In test mode this run is free and fully synthetic: it runs no real
checks and debits no wallet. You pick the result with the
**Expected outcome** control (`pass`, `review`, or `fail`, default
`pass`). See
[Expected outcome](/guides/verification/create-a-verification#expected-outcome-test-mode).

## Send the invite

The invite email contains an invite link of the form
`/v/<shortCode>?o=<token>`. The link is single-use: the token is
consumed when the applicant clicks **Start verification** on the
landing page, not when an email scanner pre-fetches the URL. If the
applicant misses the email, re-send from the applicant detail screen.
See [Send an invite](/guides/verification/send-an-invite) for the
copy-link and re-send paths.

## Watch the verification progress

The applicant detail screen updates in real time. You see the
verification status, each check as it runs with its outcome attached,
and the audit trail for your team's actions. In live mode that outcome
comes from the live check; in test mode it is the synthetic result your
chosen Expected outcome drives. You can also subscribe to a
[webhook endpoint](/developers/webhooks) to be notified instead
of polling.

## Read the result

When the verification lands on a terminal state, it carries a verdict:
`approved`, `declined`, or `review` (the platform cannot auto-decide
and the applicant is parked for a human reviewer). The verdict drives
whatever your application does next. If a `declined` verdict
surprises you, read
[Why was a verification declined?](/guides/faq/verification-declined).

## Next steps

- [Track verification status](/guides/verification/track-status) for the
  polling and webhook reference.
- [Webhooks](/developers/webhooks) to receive verification events
  instead of polling.
- Move to live mode when ready: flip the mode picker, generate a
  `live` API key, and your real applicants flow through the same code
  path.