Skip to main content
journey() mounts a complete, pre-assembled verification flow into an element you own. This page gets one running.

Requirements

  • A Customer ID and API Key from the FrankieOne portal
  • A backend endpoint that issues session tokens — or, for a local run only, the development shortcut below
  • OneSDK loaded via UMD or the @frankieone/one-sdk package
  • A recipe configured at OneSdk({ recipe }), including recipe.form — every journey reads its module configuration from there, not from JourneyOptions. See SDK Initialization for the recipe shape.
journey() requires OneSDK v1.10.0 or later.

Add a container

Give the flow an element to mount into:
Keep this element dedicated to the journey. It empties the element when it tears down, so anything else you render inside it goes too.

Mint a session token

OneSDK authenticates with a session token. In production your backend mints it and your frontend receives only the token — see Session Management and the worked backend example in SDK Initialization. To get a journey running on your own machine in a single file, you can mint one straight from the browser against your UAT environment:
Never ship this. The snippet below puts your Customer ID and API Key in client-side code, where anyone who opens devtools can read them and mint their own sessions against your account.It exists so you can see a journey run end to end without standing up a backend first. Move token minting to your server before this code goes anywhere near a real user.
The response carries token and session_id. Only token is needed to start a journey.

Start the journey

What your applicant sees

An IDV journey mounted with no further setup walks the applicant through, in order: capture, extraction, verifying, then result. The start, welcome, consent, and review screens are off by default — turn them on in configuration.

What start() guarantees

start() settles exactly once and never rejects — every ending, failure included, arrives as a resolved JourneyResult, so the happy path needs no try/catch. The two pre-flight errors are thrown by journey() itself, before a handle exists, so wrap that call if you want to catch them. Retries are internal and never surface as an outcome to loop on.

Next

IDV Journey

Document and biometric capture, screen order, and applicable options.

OCR Journey

Document capture and extraction without biometrics.

eKYC Journey

Manual form entry for personal details and documents.

Results

The outcome contract your app branches on.

Configuration

Every option, organized by what it controls.