Skip to main content
simulate and startAt are development tools. Neither belongs in a production integration — both can produce states a real applicant cannot reach.

Simulate an outcome

simulate: '<outcome>/<reason>' settles a journey from a fixture — no vendor, no document, and no backend decision required — so every branch of your switch can be exercised on its own.
A simulated journey mounts no screen, so it never emits JOURNEY:READY — that telemetry event only fires on a real run.

Available fixtures

This list is not every reason code — see Results for the full vocabulary.

Reaching attempts_exhausted

declined/attempts_exhausted has no fixture. It’s produced by the retry loop, not the simulator, so reach it by setting the retry budget to one and failing the first attempt:

Start mid-flow

startAt mounts a journey partway through its screen order, so you can exercise one screen’s configuration without walking every screen before it.
  • Applies to the first attempt only — a retry runs the normal sequence.
  • startAt: 'REVIEW' opens the review form with whatever data the entity already holds, which for a fresh entity is nothing.
  • It composes with simulate.
  • It can produce states a real applicant cannot reach, so it is not a way to shorten a production flow.

Running without a backend

mode: 'dummy' runs OneSDK entirely on locally mocked responses, with no session token and no API calls at all. See SDK Initialization for how to set it.