KYC Procedure
Know Your Customer (KYC) procedures are an integral part of financial services and are designed to protect financial institutions from fraud, corruption, money laundering, and terrorist financing.
The essence of the KYC procedure includes:
- Establishing the customer's identity.
- Understanding the nature of the customer's activities and confirming the legality of the source of funds.
- Assessing the risks of money laundering associated with the customer.
Upon successful completion of the verification, the customer is provided with the required service.
To advance to the next KYC level, successful completion of the verification process at the preceding level is required.
The KYC COMMON Process Procedure
To complete the COMMON KYC, we collaborate with our partner Ondato and utilize their SDK.
You can find integration information for the web SDK on the WEB SDK integration page in the Ondato documentation.
The COMMON
KYC process comprises the following steps:
Step 1: Integration Phase
Installation of the Ondato library.
To install the Ondato library in your project, npm can be utilized. The installation command is as follows:
npm install @ondato-public/idv-sdk
Subsequently, the library will be accessible in your project.
Further details regarding library installation are available here.
Step 2: Initiating the KYC Process
This phase commences with sending a request to the specified endpoint POST /v4/kyc/start with the parameter COMMON
.
In response, the system generates a unique application identifier (ID).
Step 3: Sending Data to Ondato
The unique application identifier (ID) generated in the preceding step is forwarded to Ondato alongside the requisite data.
Step 4: Commencing Work with Ondato
Upon receiving the unique application identifier (ID), employ the load
method from @ondato-public/idv-sdk with the following parameters:
{
mode: process.env.MODE === "production" ? IdvSdkMode.Production : IdvSdkMode.Sandbox, // Depending on the environment
onSuccess: (props) => Perform a request to https://crpt-backend-main-service.sandbox.testessential.net/swagger-ui/index.html?urls.primaryName=White%20label#/KYC/finished with the COMMON parameter and {identificationId: id} // id is from the POST request kyc/start
onFailure: (props) => Perform a request to https://crpt-backend-main-service.sandbox.testessential.net/swagger-ui/index.html?urls.primaryName=White%20label#/KYC/finished with the COMMON parameter and {identificationId: id} // id is from the [POST request kyc/start]
}
Step 5: Returning the load
Method
load
MethodThe load
method returns {begin: IdvSdkBegin; end: IdvSdkEnd;}
.
After successfully loading the SDK, you can call the begin
method with necessary parameters such as idvId (ID from the previous request), retry, and language.
begin({
idvId: id, // ID from the kyc/start request
retry: false,
language: "en-GB"
});
Step 6: Confirmation Process from Ondato
Upon completion of the process at Ondato's end and successful verification, they return the application ID or other information confirming the successful completion of the process.
Step 7: Completion of KYC Process
Upon receiving the application ID or confirmation from Ondato, a request is initiated to POST /v4/kyc/ondato/finished, indicating the completion of the KYC process at Ondato's end.
After completing this stage, the KYC process will be fully completed, and the client will have successfully undergone KYC.
Working with the Ondato SDK in a Flutter application
The application utilizes the Ondato Flutter SDK from the official repository.
These steps are applicable for both passing KYC
COMMON
and forCARD PROGRAM 1
.
Step 1: Integration Stage
Refer to the official documentation for dependency installation and SDK integration:
Step 2: Initiating the KYC Process
This stage begins with sending a request to the specified endpoint POST /v4/kyc/start with the parameter WALETTO
.
In response, the system generates a unique application identifier (ID).
Step 3: Initializing Ondato Configuration
The unique application identifier (ID) generated in the previous step is forwarded to Ondato in the identificationId field, along with necessary data.
await OndatoFlutter.init(
OndatoServiceConfiguration(
identificationId: ID,
mode: currentApiStage == ApiStage.develop
? OndatoEnvironment.test
: OndatoEnvironment.live,
flowConfiguration: OndatoFlowConfiguration(
showSplashScreen: false,
),
),
);
Step 4: Starting the Identification Process
The Ondato identification process occurs by calling the startIdentification function, which initiates the Ondato flow depending on the platform running the application.
var identificationId = await OndatoFlutter.startIdentification();
After completing the flow, the function will return the identificationId, which needs to be saved.
Step 5: Completing the KYC Process
After completing the Ondato flow, a request to finish the KYC with the obtained identificationId from the SDK should be sent: POST /v4/kyc/ondato/finished.
Upon completing this stage, the KYC process will be fully concluded, and the client will have successfully undergone the KYC procedure.
Updated 4 months ago