Skip to main content
Two ways to integrate in code: widget SDKs render Dojah’s hosted verification UI inside your app, while API clients call the REST endpoints from your server. Here’s how to pick — plus the configuration and response model shared by every widget SDK.

Widget SDKs vs API clients

Available SDKs

Widget SDKs — drop-in verification UI: API clients — call the REST API from your backend:

Packages and repositories

Configuration options

The web widgets (JavaScript, React, and the Flutter WebView build) take an options object. Every widget needs your app_id, p_key, type, and a config.widget_id; the rest — a reference_id to tie the session to your user, prefill data, and inline-embed settings — are optional. Full options reference → — the JavaScript page documents every option. React takes the same options as camelCase props.
Mobile SDKs are simpler. React Native, Flutter, iOS and Android launch with just a WidgetID (plus an optional reference ID and email). The whole flow — checks, branding, data collection — is configured in EasyOnboard and identified by that WidgetID.

Handling the response

The web widgets report flow events through callbacks:
Always confirm a verification server-side via webhooks — never trust the client success event alone. Mobile flows report results via webhooks and the EasyOnboard Verifications tab.