IQC-SDK-Integration Documentation(Flutter version)

Function Introduction

This SDK provides the following two services, please refer to the corresponding services according to your actual needs.

IDVID:Image id, the user will generate this IDVID after scanning the image automatically or taking the picture manually on the SDK, through the IDVID you can get the image information from us

Service NameLicense AuthorizationScanTake PhotoGet images from SDKGenerate IDVIDGet the image via IDVIDGet OCR and ID forgery results from SDKGet OCR and ID forgery results via IDVID
Global Image Quality Check
Global Document Verification

Android

Demo

Install CV-Demo.apk on your phone and log in with the test account.

Integrate the SDK into your project

Click to download SDK (Beta version)

  1. Copy iqc_plugin to the root directory of the project or the existing plugins folder in the project.

  2. Open the pubspec.yaml file in the root directory and add a reference to the iqc_plugin plugin under the dependencies node:

iOS

Demo

  1. The demo project is located in the ios folder that the root directory. Open Runner.xcworkspace,execute the following two commands:

Integrate the SDK into your project

  1. Add camera and motion sensor (gyroscope) usage description in Info.plist as bellow. Ignore this step if you have added those.

  2. CD to the root directory and copy the iqa_plugin folder to your iOS flutter project.

  3. Open the pubspec.yaml file in the root directory and add a reference to the liveness_plugin plugin under the dependencies node:

  4. Specify the SDK name and url in your iOS Podfile:

    If you have any questions in this step, please refer to the demo project

Quick Start

  1. Declare the plugin.

  2. Initialize the SDK.

  3. Set license (call openAPI to obtain license by your server)

  4. Get the SDK version number.

  5. Start detection and obtain the result.

    Each time the detection is successful, a unique IDVID and a photo will be returned.

    • You can get the image directly through the methods provided by the SDK, or you can call the openAPI from the server.

      With extras you can customize UI elements

      keyvalue typeSupported by Android?Supported by iOS?
      regionStirngtruetrue
      cardTypeStringtruetrue
      cardSideStringtruetrue
      modeStringtrueTrue
      soundPlayEnablebooltruetrue
      pageColorStringtruetrue
      primaryTextColorStringtruetrue
      frameRectColorStringtruetrue
      frameRectCornerRadiusnumtruefalse
      titleBackgroundColorStringtruetrue
      flipCameraBtnVisiblebooltruetrue
      lightBtnVisiblebooltruetrue
      tipIconVisiblebooltruetrue
      titleTextColorStringtruetrue
      cameraWidthPercentInPortraitStatefloattruetrue
      cameraHeightPercentInLandscapeStatefloattruefalse
      retakeBtnTextColorStringtruefalse
      continueBtnTextColorStringtruefalse
      takePhotoTipDialogShowSecondsfloattruetrue
      scanLimitSecondsfloattruetrue
      countdownTimerVisiblebooltruetrue
      screenOrientationStringtruetrue
      returnEmptyOfOCRbooltruetrue
      frameRectCornerRadiusfloattruefalse
      takePhotoTipViewBackgroundColorStringtruefalse
      takePhotoTipViewLeftIconVisiblebooltruefalse
      portraitTipConfigObjecttruefalse
      landscapeTipConfigObjecttruefalse

      This example is the keys explain and the value of option,

    • A success result sample of [Global Document Verification]:

    • A success result sample of [Global Image Quality Check]

  6. Read the latest results at anytime after the completion of the Liveness Detection(This feature is only supported on Android).

    You can get the result in the callback after the Liveness Detection is completed (step 5), or you can get it at any time through the following methods.

  7. User binding (strongly recommended).

    You can use this method to pass your user unique identifier to us, we will establish a mapping relationship based on the identifier。It is helpful for us to check the log when encountering problems.


Android Error Code:

CodeExplanationSolution
CHECKING_BAD_NETWORKThe image uploading network request failed after the motion endedTry again after using VPN
DEVICE_NOT_SUPPORTThe device does not support liveness detectionThe device has no front camera or is unavailable
USER_GIVE_UPThe user interrupted the Liveness detection/
UNDEFINEDOther undefined errors/
NO_RESPONSERequest network failedCheck your network status.
AUTH_PARAMETER_ERRORAuthorization request parameter errorPlease check whether the key passed to the initialization method is SDK’s or not, and make sure that the Market matches.
AUTH_IAM_FAILEDPackage name not registeredSelf-configuration on SaaS (Personal Management -> ApplicationId Management) or contact us to add

iOS Error Code:

CodeExplanationSolution
USER_GIVE_UPThe user tapped the back button/
DEVICE_NOT_SUPPORTThis device is not supportedThe device has no front camera or is unavailable
NETWORK_REQUEST_FAILEDNetwork request failedCheck your network status.
CAMERA_OPEN_FAILEDFailed to open the camera/
MODEL_ERRORLoad model failed/
Other error code...See document/