Lookup Flow

Note: This feature requires an additional permission and must be explicitly requested

The "Lookup Flow" it's the same as the "Enrollment Flow" with the only difference that the first step is not the automatic scanning of a document through the camera phone but the user is asked to manually type in some information of the document that can be used to perform the lookup on the government database. Only one document at the time is supported. Other features like facial recognition and background check can be enabled in the same way as per the "Enrollment Flow". Note that not all the documents are supported.

In order to use our SDK you need an authorization token. Please check our API "Authorisation" in this regard.

Add the following code at the start-up of your application to initialize the SDK:

import * as UqudoSDK from 'uqudosdk-capacitor';

...
//On App startup
new UqudoSDK.UqudoPlugin().init();
...

For setting the locale of the application you can use the below method:

...
new UqudoSDK.UqudoPlugin().setLocale(<your locale eg. en, ar etc.>);
...

To check if a document supports lookup and lookup with facial recognition:

...
let isLookupSupported = await new UqudoSDK.UqudoPlugin().isLookupSupported(DocumentType.NGA_DL)
let isLookupFacialRecognitionSupported = await new UqudoSDK.UqudoPlugin().isLookupFacialRecognitionSupported(DocumentType.NGA_DL)
...

Below, you can find an example on how to initiate the lookup flow:

const lookupConfiguration = new UqudoSDK.LookupBuilder()
	.setToken(token)
	.setDocumentType(UqudoSDK.DocumentType.NGA_DL)
	.enableFacialRecognition(
		new UqudoSDK.FacialRecognitionConfigurationBuilder()
          		.setLookupMinimumMatchLevel(4)
          		.build()
	)
	.enableBackgroundCheck(
		new UqudoSDK.BackgroundCheckConfigurationBuilder()
          		.skipView()
          		.build()
	)
	.setAppearanceMode(UqudoSDK.AppearanceMode.SYSTEM)
	.build();
try {
   const plugin = new UqudoSDK.UqudoPlugin();
   const result = await plugin.lookup(lookupConfiguration);
   console.log(result.value);
} catch (error) {
   console.log(JSON.parse(error.code));
   //example: {"code":"USER_CANCEL","message":"User canceled the Enrollment process","task":"LOOKUP"}
}

In order to evaluate all the possible options please refer to paragraph Lookup Flow. The TS interface is the porting of the JAVA one. In addition, you can check index.d.ts inside the plugin ./dist folder or directly from your IDE.

If successful, the response is a JSON Web Signature (JWS). Please refer to section "SDK result" for further details.

In case of a failure, the callback returns the following object:

PropertyTypeOptionalDefaultDescription

code

String

No

None

message

String

Yes

null

Description of the error if any

task

String

Yes

null

Add the following code in your Javascript/Typescript to enable the tracing mechanism. Please refer to section Analytics for details.

window.addEventListener("TraceEvent", function (msg) {
     console.log("Trace Event: " + JSON.stringify(msg));
   });

Last updated