Embedding

Show the verification inside your page instead of sending the person away. First list your site under Settings → Branding → "Websites that may embed the flow" (for example https://www.example.com). Pages on other sites cannot frame the flow, and it sends its events only to your site.

HTML
<script src="https://verify.secuveri.com/sdk/v1/secuveri.js"></script>
<script>
  // url: the `url` your backend got from POST /v1/sessions
  const flow = Secuveri.open({
    url,
    mode: "modal", // or "inline" with container: document.getElementById("verify")
    onComplete(result) {
      // { session_id, verification_id, status }: for your UI only.
      // Confirm the outcome with the webhook or the signed result.
    },
    onClose(reason) {
      // "done" after the person finished, "cancelled" if they closed it
    },
  });
</script>
EventWhen
secuveri:readyThe flow has loaded (onReady).
secuveri:stepThe person moved to another step; on a computer HANDOFF, then ON_PHONE (onStep).
secuveri:completedThe verification was submitted (onComplete).
secuveri:closeThe person pressed Done (onClose("done")).

On a computer the frame shows a QR code; the person continues on their phone and the frame follows along, then reports completion. Secuveri.createFrame(url) gives you a ready iframe (with camera permission) if you place it yourself. In an embed the flow does not redirect to callback_url; your page decides what comes next. The same script also offers Secuveri.start, the API of the @secuveri/web package (see SDKs).