GBG Developers

Guides   |   iOS Identity Solution SDK Overview

iOS Identity Solution SDK Overview

Introduction


The GBG Identity Solution offers a suite of verification functionality for integration into your solution. Software Development Kits (SDKs) are available for iOS, Android and for web-based applications. A HTTP REST based API is also available for use with any programming language and platforms. This guide explains how to make use of the iOS Identity Solution SDK.
The iOS Identity Solution SDK can be used in several ways. Custom applications can be created to perform verifications based on photos, document images and text content. To speed up app creation, there are Smart Capture features within the SDK that can be optionally used to speed up app development. Smart Capture can guide the user with an overlay on top of the camera view in order to perform good quality captures for document and image verification.

iOS SDK Screenshots

iOS Identity Solution SDK Overview


The SDK provides a number of services to access Identity Solution functionality. Using the services is as simple as creating the service object, building a request object containing the information you wish to verify, and passing that into the service object. The response object contains the verification information.
If you’re not familiar with the Identity Solution, once the account is set up, the basic procedure to interact with it using the HTTP REST API is:

  1. Obtain an access token from an OAuth Identity Provider (IDP) such as AWS or Azure
  2. Exchange it for a GBG access token from GBG’s Identity Solution servers
  3. Attach the GBG access token to any verification request made to the Identity Solution
  4. Handle the verification responses in your application code as required

The mobile SDK provides a higher layer of functionality so that individual HTTP calls are not needed:

  1. Obtain an access token in the same manner as above, using an OAuth Identity Provider
  2. Use the SDK’s Auth Service to obtain a GBG access token (optionally HTTP can be used for this step)
  3. Use any additional SDK services (examples include person verification, document image and face matching services) as required for handling your verification workflow. Inputs can be text based or image (bitmap) based. For image based workflows, use the smart capture feature in the SDK to reduce coding effort.
  4. Handle the verification responses in your application code as required

The services available are:

Auth Service - This service provides a method to send the identity provider (IDP) access token to the GBG Identity Solution servers to obtain a GBG access token in return. A GBGAuthService class method called authenticate is used to pass the IDP token and in return a GBG access token is received.
The GBG access token acts like a key to allow verification functionality in subsequent requests. The token is automatically stored in the iOS keychain, ready for use by the other services as required.

Address Service – Use this service’ GBGAddressLookupService class find method to find a list of addresses which match particular search criteria, and then to drill-down to retrieve a full address.
The find method is used to send the search criteria (such as a partial postal code or the first few characters of a street name), and the response will be a list of addresses, each with an identifier. The find method can be called repeatedly as more characters are typed by the user. Once the user has seen that a completion exists from the returned list of addresses, the application can obtain the full detail by passing the associated identifier into the retrieveAddress method.

Verify People Service – Use this service to send text based details of a person to be verified.
The details are sent using an instant of the GBGPeopleVerifyService class. Use the verify method if this is the first request in a sequence of requests. Use the verifyId method for subsequent requests. In both cases, the returned response contains the result for that verification and the combined decision so far.

Documents Service – The GBGVerifyDocumentService can be used to perform a verification of a document image and return extracted and analyzed text details.
There are several ways this service can be used. One way is to upload an existing image on the mobile device, transferred as a bitmap. Another option called Smart Capture makes use of the camera to assist the user to capture a good quality document image for the service. The image is sent using the verify method. The response will contain pass or failure detail.

Facematch Service – This service can be used to see if a photo matches the one from the prior document verification.
Once you have done a document verification, you can use the GBGFaceMatchService. Typically the photo would be captured in the mobile app using the built-in camera and is application-dependent. The default camera application could be used as an example. The bitmap data can be sent by calling the match method. The response will indicate if the match was successful or not.

Liveness Service – This Liveness service prompts the user to perform live motions in from of the camera to aid in confirming that the user that is being verified is present when using the application.
The Liveness service can be used to overlay information on the screen advising the user how to hold the camera and the gesture to perform. A GBGLivenessViewController method called present is used to launch the liveness service.

Using the Guides


Now that you have an overview of the SDK, proceed to the following guides. They can be read in any order, although the first five guides are in the order of a typical first workflow. The Debugging guide is useful when troubleshooting run-time issues for tokens or for any of the services.

Working with the iOS SDK: Procedure Overview
Add iOS SDK to your Project
Initialize the iOS SDK
Obtain an Identity Provider Access Token
Obtain a GBG Access Token using the SDK
Using the Address Service
Using the Verify People Service
Using the Documents Service
Using the Facematch Service
Using the Liveness Service