All in one eKYC (Electronic Know Your Customer) solution available for android and ios. Wide Technologies Indonesia provides an SDK for you to implement integration with your native mobile application. This document provides you with an overview of the SDK integration in terms of its architecture, interaction flow, available products, and general integration process.
- Available Products
- Integration Architecture
- Interaction Flow
- Integration Process
- API Documentation
- Reference
WideKYC SDK integration can be applied to the following products:
- Liveness Detection
- ID Recognize (OCR)
- ID Validation (by Dukcapil - Population and Civil Registration Agency)
- Passport Recognize (OCR)
- Family Card Recognize (OCR)
Here is the architecture of our SDK integration.
Figure 1. SDK integration architecture
SDK integration consists of two parts:
-
Client-side integration: integrate the WideKYC SDK into the merchant application. The WideKYC SDK provides a ready set of screens and tools for both iOS and Android applications to capture required user data such as face images, identity document images, and so on. By integrating the WideKYC SDK, you can easily create a friendly interaction experience for your users in terms of:
- Well-designed UI to guide your users through the simple and easy business process
- High success rate and high security with multiple algorithms applied
- Simplified integration process by directly uploading images to the WideKYC service to process
-
Server-side integration: Expose endpoints for your (merchant) application in your (merchant) server so that the merchant application can interact with the merchant server, which then accesses the WideKYC API to initialize a transaction and double-check verification results.
The following diagram illustrates the whole interaction flow when a WideKYC service is started through the mobile application.
Figure 2. Sequence diagram
- A user initiates a business process (for example, an ID Recognize process) through the client's mobile app.
- The client's mobile app calls the getMetaInfo interface to obtain the meta information about the WideKYC SDK and the user's device for preparation.
- The WideKYC SDK returns the meta information to the client's mobile app.
- The client's mobile app initializes a transaction and passes the meta-information and product type to the client's backend server.
- With the meta-information and product info as input, the client's backend server calls the initialize API to obtain the configuration information, which includes parameters about SDK connection and behavior.
- The WideKYC server performs a usability check based on the meta-information. If the check is passed, the WideKYC server returns the configuration information to the client's backend server.
- The client's backend server returns the configuration information to the client's mobile app.
- The client's mobile app starts the WideKYC SDK with the configuration information obtained in Step 7.
- The WideKYC SDK interacts with the user, captures required data (for example, ID images), and uploads it to the Wide server for verification.
- The WideKYC server performs related checks on the uploaded user data and returns the transaction status to the WideKYC SDK. If all the corresponding checks are passed, a result code that indicates success is returned to the WideKYC SDK; otherwise, the process might be interrupted and further interactions are needed between the user and the WideKYC SDK.
- The WideKYC SDK notifies the client's mobile app that the transaction is completed.
- The client's mobile app syncs with the client's backend server that the transaction is completed and starts a double check on the transaction details.
- The client's backend server calls the checkResult API to check the transaction details with the WideKYC server again.
- The WideKYC server returns the transaction details to the client's backend server.
- The client backend server filters the transaction details that are returned from the WideKYC server and returns the information that is not sensitive to the client's mobile app.
- The client's mobile app informs the user that the process is completed.