Skip to main content
The configuration you pass alongside the token controls how the flow looks and behaves. Every field has a default, so an empty configuration is valid and you only set what you want to change.

Appearance

Theme, colors, corners and typography.

Localization

Languages and copy overrides.

Document capture

Detection, capture mode, preview and retakes.

Screen toggles

boolean
default:"true"
An intro screen listing the steps the user is about to go through.Worth keeping. Users who know a selfie is coming are less likely to abandon at the liveness step. Turn it off only if your own screen already explains the flow.
boolean
default:"true"
A final screen rendered by the SDK after the flow ends, whether it succeeded or failed.Turn this off when you want to render your own outcome screen — the result is returned to you either way, so nothing is lost.
boolean
default:"false"
Includes technical detail in the error messages shown to the user.
showErrorDetail is a debugging aid. Leave it false in production: the detail is written for developers, and telling a user precisely which check rejected them tells an attacker precisely what to change.

Location permission

This controls whether the SDK asks for location at the start of the flow.
Only enable it if you use on_gps_mock_location or on_gps_ip_location_mismatch in device policy. It is an extra prompt early in the flow, and some users drop out there.
On iOS, requiresLocationPermission: true also needs NSLocationWhenInUseUsageDescription in your Info.plist. See iOS installation.

Build the config where?

Unlike the transaction configuration, this one is purely cosmetic and behavioural — it decides what the flow looks like, never what gets accepted. It is safe to build it in the app.
Verification rules — thresholds, accepted documents, expected data — live in the transaction config on your server. Nothing in the SDK configuration can weaken a verification, and nothing that could should ever be put here.

Platform naming

The same concepts, spelled to each platform’s conventions: Color keys, localization keys and enum values are identical across platforms, so a design spec or a copy deck written once applies to both.