Implementation Guide

Authentication

A unique access token should be created upon each SDK entry. In order to generate an access token, please refer to Valify's Authentication Documentation.

Importing

Import the module’s function in your file using the following line

import 'package:vidvocr_flutter_plugin/vidvocr_flutter_plugin.dart';

Configurations

The plugin builder is separated into two components.

Required Configurations

Initialize the required parameters as follows while adding the required configurations

  final String baseURL = ' '; //put your acctual base url here
  final String bundleKey = ' '; //put your actual bundle key here
  final String accessToken = ' '; //put your actual access token here

Optional Configurations

Initialize the required parameters as follows while adding the desired configurations

final String language = "<insert_language>"; // "en" is set as default
final bool document_verification = <boolean>; // false is set as default
final bool collect_user_info = <boolean>; // false is set as default
final bool document_verification_plus = <boolean>; // false is set as default
final bool advanced_confidence = <boolean>; // false is set as default
final bool profession_analysis = <boolean>; // false is set as default
final bool review_data = <boolean>; // default is true
final bool preview_captured_image = <boolean>; //default is false
final bool manual_capture_mode = <boolean>; //default is false
final bool capture_only_mode = <boolean>; // default is false
final String primary_color =<hex_color_code>”; //default is valify default color
final bool enable_logging= <boolean>; // default false

Configurations Breakdown

This section shows the breakdown of all optional builder configurations.

  1. The following line is where the user interface language is set.

final String language = "<insert_language>"; // ["ar" or "en"] 

The currently supported languages are Arabic and English

  1. If the following line is set to true, the SDK will return document verification plus data

final bool document_verification_plus = <boolean>;
  1. If the following line is set to true, the SDK will return advanced confidence data

final bool advanced_confidence = <boolean>;
  1. If the following line is set to true, the captured image will be displayed for the user.

final bool preview_captured_image = <boolean>;
  1. If the following line is set to true, the SDK will automatically enable manual capture if it detects that the user is unable to autocapture card.

final bool manual_capture_mode = <boolean>;
  1. If the following line is set to true, a screen is added to the user flow that displays the images captured and the OCR result to the user.

final bool review_data = <boolean>;
  1. If the following line is set to true, the SDK purely performs image capturing and only returns these images in the SDK response.

final bool capture_only_mode = <boolean>;
  1. The following line is optional and can be used to receive event logs from the SDK experience to be used for user behavior analysis.

final bool enable_logging= <boolean>;
  1. The following line is optional and can be used to set your company's branding color to the SDK's user interface.

final String primaryColor =<hex_color_code>”;

Parameter Declaration

Declare the SDK parameters with the configuration variables previously created

Map<String, dynamic> params = {
  "base_url": baseURL,
  "access_token": accessToken,
  "bundle_key": bundleKey,
  "language": language,
  "document_verification": document_verification,
  "review_data": review_data,
  "capture_only_mode": capture_only_mode,
  "manual_capture_mode": manual_capture_mode,
  "preview_captured_image": preview_captured_image,
  "primary_color": "primary_color",
  "enable_logging": enable_logging,
  "collect_user_info": collect_user_info,       
  "advanced_confidence": advanced_confidence,     
  "profession_analysis": profession_analysis,     
  "document_verification_plus": document_verification_plus
};

Start the SDK

Use the following code snippet to run the plugin

    try {
      final String? result = await VidvocrFlutterPlugin.startOCR(params);
        //handle logic to use the liveness response depending on the state    
    } on PlatformException catch (e) {
        //catch errors here
    }

Last updated