Skip to main content
A Trust Flow is the sequence of checks you configure in the IDmeta Dashboard — for example document capture, biometrics, or government data. The Mobile SDK runs that same sequence inside your own app, on the applicant’s device. The SDK is the Flutter plugin idmeta_flutter. Your app calls IdmetaFlutter.startVerification. The plugin opens the verification UI, captures what the Trust Flow asks for, and sends it to IDmeta. Your app does not receive the outcome as a return value from that call. Read results in the Dashboard, through webhooks, or with the Trust Validation Result API. These pages assume a Flutter host app. Native Android or iOS apps can wrap the plugin through Flutter add-to-app, but that path is not covered here. If you need a ready-made Android app and do not want to embed the SDK, use the Kiosk App instead.

How it works

  1. You create a Trust Flow in the Dashboard. That flow is the source of truth for which checks run.
  2. Your app launches the flow with IdmetaFlutter.startVerification, passing the Trust Flow ID and your account credentials.
  3. The SDK presents its own UI on top of your app and walks the applicant through those checks.
  4. The SDK calls the IDmeta API. The device must stay online for the whole session.
  5. When the applicant finishes, the case appears in the Dashboard. If the Trust Flow has a verification webhook, IDmeta also posts the outcome to your endpoint, including any metadata you passed at start.

What it is built on

  • A Flutter plugin for Android and iOS
  • On-device document and biometric capture
  • The same Trust Flows as Direct Link and the API

What you need

The SDK authenticates as an IDmeta user and runs one Trust Flow. Collect these three values before you call startVerification. Use them from a Flutter app that meets the requirements below.

Requirements

These are the requirements for the latest version. For what changed in each release, see the Changelog.

Install

Add the plugin to your Flutter app:

Start a verification

Call this from a Flutter widget that has a valid BuildContext — for example a button in your onboarding screen. The SDK pushes its UI onto the navigation stack.

Your own capture licences

Document capture licences are tied to an app ID. By default the SDK loads them from IDmeta for your Client ID. If the licences on your IDmeta account were issued for a different app ID, pass licences issued for your app:
Every key is optional. Any key you leave out is still loaded from IDmeta.

Platform setup

The plugin will not build or capture on a device until the native projects are configured. Do this after you add the package, then come back and call startVerification.

Android setup

Gradle settings, minSdk, and permissions.

iOS setup

Podfile, iOS 16, and Info.plist usage strings.