User KYC process
Last updated
Last updated
Know Your Customer (KYC) is the mandatory process of identifying and verifying the customer's identity before allowing them to have an account and perform transactions. KYC standards are designed to protect financial institutions against fraud, corruption etc. KYC process helps to establish customer identity and understand the nature of customers’ activities by performing KYC risk intelligence screening in order to qualify that the source of funds is legitimate.
nCore platform offers KYC process on two types of individual users given below:
S No. | User Type | Policy name | Prerequisite |
1 | Parent user | UAE_INDIVIDUAL_PRIMARY | KYC processing must be enabled at tenant level |
2 | Child user | UAE_INDIVIDUAL_SECONDARY | KYC processing must be enabled at tenant level and Parent user must be KYC verified |
Please contact the NymCard representative at contact@nymcard.com to enable KYC processing.
Following are the KYC restrictions based on user status.
When the user status is “PENDINGKYC”, “SUSPENDED” or “TERMINATED”, then operations like creating an account, creating a card and linking a card are not allowed. These operations are enabled for the user only when the user status is marked as “ACTIVE”. In addition to that, when the user status is “PENDINGKYC”, then the user can create a child user.
Note, that if KYC settings=true at the tenant level, the following parameters can not be updated for user with ACTIVE status:
nCore sandbox environment provides a feature to simulate the KYC processing of user(s) and update appropriate user statuses based on the KYC result.
Once you create a request to perform a user KYC successfully by sending a POST request to /users/{id}/kyc endpoint, the platform starts a service which runs internally and performs the checks based on the policy you linked in the request. You can create more than one request. The internal service will pick all submitted KYC requests, process them and update the user and KYC statuses and give you a glance of the frictionless KYC processing which nCore platform provides in sandbox as well as in production environments. After a successful KYC processing you can create resources for the KYC verified users in a sandbox environment.
In the following ways you can simulate different KYC processing use cases.
Before creating a user, please make sure that the KYC service picks only those KYC requests when
The ‘require_kyc’ parameter is set as “true” at tenant level and
The user status is set as “PENDINGKYC” and
The KYC status is “SUBMITTED”
Positive use case:
To simulate a positive KYC processing case, please create a user with ‘last_name’ as “pass” as given below.
Now create a ‘perform KYC’ request as given below.
Note: the KYC service will process the request and return a response as “OK”.
Negative use case:
To simulate a negative KYC processing case, please create a user with a last_name as “fail” as given below.
Now create a ‘perform KYC’ request as given below.
Note: the KYC service will process the request and return a response as “FAILED”.
Once the API user submits the KYC request a webhook ‘KYC_RESULT’ is triggered and the notification is sent to the configured endpoint to notify the client.
You can create a corresponding webhook as shown in the below example.
Also when the user's status is changing internally based on the KYC processing, the webhook status is kept notifying the client.
You can create a corresponding webhook as shown in the below example.
For further details, please refer to the Webhooks section.
You can perform and manage KYC verification by using our APIs. Following are the APIs available at nCore platform for KYC management.
Perform KYC
Get KYC by ID
Search for KYC requests
You can perform KYC on a user by sending a POST request to /users/{id}/kyc endpoint; where id is the user’s id to whom the KYC is requested. An example is given below.
You can retrieve a specific KYC by sending a GET request to /users/kyc/{id} endpoint, where id is the KYC request ID.
You can search for KYC requests by sending a POST request to /users/kyc:search endpoint along with the filter as shown below.