Skip to main content
Urtentic’s mobile integration embeds the hosted verification flow (https://verify.urtentic.com) inside a native WebView. This gives you a full verification experience with camera access, liveness detection, and document capture — without needing a native SDK.

How It Works

  1. Your app opens a WebView pointed at https://verify.urtentic.com with clientId, flowId, and metadata as query parameters.
  2. The verification flow runs entirely within the WebView (camera, document capture, liveness, etc.).
  3. The hosted page posts postMessage events to signal progress.
  4. Your app listens for these events via a JavaScript bridge and responds accordingly (close the WebView, update state, etc.).

Flutter Integration

The example below is a complete Flutter implementation using webview_flutter.

Dependencies

Add these to your pubspec.yaml:

iOS Setup

In ios/Runner/Info.plist, add camera and microphone usage descriptions:

Android Setup

In android/app/src/main/AndroidManifest.xml, add:

Full Implementation

Launching the Verification Page

Verification Events

The hosted page emits postMessage events that your bridge forwards to Flutter:
verificationComplete indicates the user finished the flow in the UI — it does not mean the backend has approved the verification. Always rely on webhook notifications for the authoritative result before granting access.

URL Parameters

The verification page is loaded at:

Permissions

The WebView requires camera and microphone access for document capture and liveness detection. Request these at the OS level before loading the WebView:
On Android, also grant permissions requested from within the WebView by implementing setOnPlatformPermissionRequest:

Handling Results

After verificationComplete, refresh the user’s verification status from your backend rather than relying solely on the event type:

React Native Integration

For React Native, use react-native-webview. The approach is identical: load https://verify.urtentic.com with query parameters and listen for postMessage events.

React Native Permissions

Next Steps

  • Webhooks — receive authoritative verification results server-side
  • Direct Link — if you want a redirect-based flow without a WebView bridge
  • Verification Processes — understand what each step verifies