KYC Verification System

The KYC (Know Your Customer) Verification system is a powerful feature in the ERPNext FMS module designed to automate the validation of identity documents for employees and customers. It integrates with third-party services (like Signzy) to perform real-time verification of documents such as Aadhaar, PAN, and mobile numbers, including OTP-based validation.

System Components

The framework consists of several interconnected DocTypes that work together:

  • KYC Document & KYC Types: These are master DocTypes where you define the kinds of documents and verification methods your organization will use (e.g., Document: "Aadhar", Type: "Aadhar OCR" or "Aadhar Verification"). The system comes with default documents like Pan, Mobile No, and Aadhar.
  • KYC Verifcation: This is the main document where a KYC check is initiated for a specific employee or customer.
  • KYC: This is a table within the "KYC Verifcation" document. Each row represents a specific KYC type to be verified, and it holds the verification status, the "Verify" button, and the API response.

How the KYC Verification Process Works

  1. Initiate Verification:

    A user creates a new KYC Verifcation record from the menu: Dashboards > KYC Verifcation.

  2. Select the Target:

    The user first selects the KYC Level ("Employee" or "Customer") and then chooses the specific employee or customer record. Based on this selection, the system automatically populates the KYC List table with the predefined set of KYC checks to be performed.

  3. Perform Verification:

    For each row in the KYC List, the user clicks the Verify button. This triggers a backend process:

    • The system fetches the required data (e.g., Aadhaar number, mobile number) from the selected employee or customer record.
    • It calls the appropriate external API for verification.
    • For mobile number verification, the API sends an OTP to the user's phone, and a popup appears in the UI to enter the OTP.
  4. Review Results:

    Upon successful verification, the Verified checkbox in the row is automatically checked, and the raw data received from the API is stored in the API Response field for auditing purposes. A success message is displayed.

  5. Submit the Document:

    Once all the required documents in the KYC List are marked as "Verified," the user can Submit the main "KYC Verifcation" document to finalize the process. The system will prevent submission if any verification is incomplete.

DocType Fields and Descriptions

KYC Verifcation (Main Document)
Field Description Required
Select KYC Level A dropdown to choose whether the KYC is for an "Employee" or a "Customer". Yes
Employee / Customer A link field to select the specific employee or customer. This field appears based on the KYC level selected. Yes
KYC List A table containing the list of KYC checks to be performed. Each row represents one type of verification. No
KYC (Table within KYC Verifcation)
Field Description
KYC Type The type of verification to be performed for this row (e.g., "Aadhar Verification", "PAN Verification").
Verified A read-only checkbox that is automatically ticked upon successful API verification.
Verify A button that triggers the backend API call for verification when clicked.
API Response A read-only JSON field that stores the complete, raw response from the verification API for auditing and debugging.
Discard
Save
This page has been updated since your last edit. Your draft may contain outdated content. Load Latest Version

On this page

Review Changes ← Back to Content
Message Status Space Raised By Last update on