Skip to main content
Veriqa covers several applied scenarios, and each has its own page. What they share is the mechanism: the same authorize request, with the difference living entirely in the parameters you send and what you do with the result.
Scenarios are plain OpenID Connect. They need no API of their own, so the recipes are given at the HTTP level and work the same way on .NET, Node, Java and Python.

The scenarios

Passwordless sign-in

A QR code on screen, confirmation in a messaging app, sign-up in the same step.

Sign-in with channel linking

One action, two results: the user signs in and the product gains a live channel.

Second factor and step-up

A fresh confirmation before a sensitive operation, or a confirmation of the action itself.

Replacing SMS codes

The same flow with no per-message charge and with full authentication.

Leads without CAPTCHA

A verified contact and a live channel instead of a hand-typed address.

Account recovery

A linked channel instead of a chain of emails and codes.
Confirming an operation without creating a session is a special case of the leads scenario; the mechanics are on Confirmed form submission.

What you can pass to authorize

What to keep in mind

  • Freshness is yours to check: compare auth_time from the id_token with the current time and decide whether it fits the operation.
  • Your own sign-in button is a plain link to authorize with the right parameters, so it needs no SDK or widget.
  • To have a person confirm a specific action — a payment with its amount and recipient, deleting a project — your backend creates a server-to-server confirmation transaction. See Second factor, step-up and action confirmations.

Next

OIDC + Veriqa explained

Where Veriqa sits inside the standard flow.

Channel setup

Telegram, WhatsApp, other channels and Email.