SDK reference · Flutter SDK

Incode Flutter SDK Reference

The Incode Flutter SDK adds end-to-end identity verification to your app: document and ID capture with OCR, selfie and video-selfie liveness, face match, and NFC e-passport reading. The UI is fully themeable, so onboarding looks and feels like your product. The SDK ships through GitHub and supports Android and iOS. Multiple variants are available for different feature sets.

This page orients you to what the SDK does and routes you to the page you need next. If you are starting fresh, begin with Getting Started and Common Implementation Patterns.

Start here

If you want to... Go to
Add the SDK to your project Installation
Get an onboarding flow running Common Implementation Patterns
Authenticate a returning user Face Login
Browse available modules Modules
See the result payloads modules return Results
Customize colors, fonts, and text Customization
Browse the full public API API Reference
Solve a build problem Known Issues
Migrate to a newer version Migration Guide

How the SDK fits together

The SDK supports three integration patterns. They differ in how much of the UI and orchestration the SDK owns. The recommended starting point for most integrations is the online-configured flow.

You build a Flow or Workflow in Dashboard and pass its ID/URL (configurationId) to startFlow() or startWorkflow(). The SDK owns the UI from the first screen to the last and returns results through listener callbacks. Use this pattern when you want to update flow behavior from Dashboard without redeploying your app.

See Run Flows Configured Online for the details.

Pattern 2: Configure flows locally and run end to end

You build an OnboardingFlowConfiguration in app code describing the modules you want (ID scan, selfie, NFC, and so on) and pass it to startOnboarding(). The SDK owns the UI from the first screen to the last and returns results through listener callbacks. Use this pattern when you want the simplicity of a single SDK call but prefer defining your flow in code rather than in Dashboard.

See Configure Flows Locally and Run End to End for the details.

Pattern 3: Configure flows locally and run step by step

You run modules in named sections and return control to your app between sections. The SDK still owns each module screen (camera UI, capture experience, on-device guidance), but your app owns the shell around them: navigation, your own intro and transition screens, and when each section launches. Use this pattern when you need to interleave Incode steps with your own screens or run only part of a flow.

See Configure Flows Locally and Run Step by Step for the details.

Variants

The SDK has multiple variants, so you only ship what you use.

Variant Description
Standard Default variant. No modifier.
-vc Streams the camera feed during Selfie and ID scan.
-nfc Reads data from a passport or ID chip via NFC.
-l Manipulates locally stored identities. Required for 1:N FaceAuthMode.local Face Login.

See SDK variants on the Installation page for details.

What the SDK can do

  • Identity capture: ID scan, document capture, and OCR data extraction.
  • Liveness and biometrics: selfie capture, video selfie, liveness detection, and face match.
  • NFC / e-passport: reads the chip in passports and supported ID documents.
  • Authentication: standalone Face Login for returning users (1:1 or 1:N database lookup). See Face Login.
  • Customization: theming, localization, and custom assets so the experience matches your brand. See Customization.

Need help?

  • Hit a build or runtime error? See Known Issues.
  • Looking for a specific class, method, or parameter? See API Reference.
  • Still stuck? Contact your enterprise Customer Success Manager or email help@incode.com.

Was this page helpful?