Running SmartSelfie™ Authentication on IOS

  1. Create a Callback Endpoint

  2. Get your user's Selfie

  3. Submit the Job to Smile ID

  4. Interpret your results

Authenticating a User

The SmartSelfie™ Authentication entails comparing a SmartSelfie™ against the Selfie on file of a registered user. To register a user, the job request payload is exactly the same as a SmartSelfie™ Authentication except for two differences (both changes are to be made in the Making a Job Request section of this page):

  1. Since you are just authenticating the user, you need an already registered user_id (details of Key in Making a Job Request section of this page)

  2. Set the job_type to "2" (details of Key in Making a Job Request section of this page)

If you are performing a SmartSelfie™ Authentication for a user you've previous Registered or performed ran a successful Biometric KYC or Document Verification on, you can skip the "Registering a User" section in the rest of this page.

Get the User's Selfie

To successfully run SmartSelfie™ Authentication jobs you need to submit the user's selfie.When using the Smile ID UI please see Presenting Screens and Selfie Configuration on how to present the selfie capture screen and when using the Smile ID SDK please see Smartselfie Capture on how to integrate directly with the selfie capture view.

Submit the Job to Smile ID

var partnerParams = PartnerParams()
partnerParams.setJobId(jobId: <#T##String#>)// unique identifier string per job
partnerParams.setUserId(userId: <#T##String#>)// unique identifier for the user information being processed
partnerParams.setAdditionalValue(key: <#T##String#>, val: <#T##Any#>)//string key and value
                                            // for anything etra which you may need associated with the job

Step 2:Create the config

//Set the environment which can be either
// SIDNetData.Environment.PROD or  SIDNetData.Environment.TEST

let sidNetData = SIDNetData(environment: SIDNetData.Environment.PROD)

// the instance of SIDNetworkRequest which is responsible for handling
//api calls and callbacks to your app
let sidNetworkRequest = SIDNetworkRequest()
sidNetworkRequest.setDelegate(delegate: <SIDNetworkRequestDelegate>)// an instance of SIDNetworkRequestDelegate
//which has various callback methods to your app

let sidConfig = SIDConfig()
sidConfig.setSmileIdNetData(data) //Environment information
sidConfig.setUserIdInfo(userIdInfo: <SIDUserIdInfo>) // set user id info
sidConfig.setSidNetworkRequest( sidNetworkRequest : sidNetworkRequest )
sidConfig.setPartnerParams(partnerParams: <PartnerParams>) //set partner params
sidConfig.setJobType(2);//int must be set to 2<String>) Job identifier

Step 4: Submit the Job

sidConfig.getSidNetworkRequest().submit(sidConfig: sidConfig )

Step 5: Interpret your results

SIDResponse object 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 SmartSelfie™ Authentication section of the docs.

Last updated