Enhanced KYC

Previously and also when sending job in the SDK this is set as job type 5

Running Enhanced KYC on the Flutter

  1. Get the ID information from your users

  2. Submit the Job to Smile ID

  3. Interpret your results

Get the ID information from your users

It is important that this information is gathered according to supported id types and required information as listed on this section. Please ensure that data is validated before sending information over to avoid unnecessary errors.

Submit the Job to Smile ID

Step 1.Set the User Identity Information to be validated

// Instantiate the metadata which 

//Instantiation
var userIdInfo = HashMap<String, String>();

//Set country
userIdInfo["country"] = <Country>; //String Alpha-2 country code

//Set id type
userIdInfo["id_type"] = <ID Type>;

//Set id number
userIdInfo["id_number"] = <ID Number>;

//Set first name
userIdInfo["first_name"] = <First Name>

//Set middle name
userIdInfo["middle_name"] = <Middle Name>;

//Set Last Name
userIdInfo["last_name"] = <Last Name>;
var partnerParams = HashMap<String, String>();
partnerParams["user_id"] = <User ID>;
partnerParams["job_id"] = <Job ID>;

Step 3: Optional Set Geo Information

var geoInfo = HashMap<String, String>();
geoInfo["altitude"] = <Altitude>;// a string value of a latitude
geoInfo["longitude"] = <Longitude>;// a string value of a longitude

Step 4: Submit the Job

 var submitResult = await SmileFlutter.submitJob( String tag,
      int jobType,
      bool isProduction,
      String callBackUrl,
      Map<String, String>? partnerParams,
      Map<String, String>? idInfo,
      Map<String, String>? geoInfo);
  • jobType should be set to 5 and is required

  • isProduction (required)should be set to true if you intent to run in production and false if you intend to run in sandbox, it is important to note you cannot run real ID Numbers check on sandbox, for test data please see here

  • callBackUrl (Optional)can be null but if not it should be a url which the job data will be posted to depending on the status the job is in

  • partnerParams (Optional)This is the object create in the step above related to partner params

  • idInfo (Required)This is the object create in the step above related to user id information

  • geoInfo (Optional) This is any information that may be necessary to associate the job with any geolocation

Step 5: Interpret your results

This will return a hashmap which will contain results returned from the api this contains strongly typed method to get the response as individual items or as json object or as a string, for more information on how to interpret results you can read more about result codes and responses in the Enhanced KYC section of the docs.

Last updated