Integration Flow

Learn about the API you need to integrate with to use ZWITCH's name verification service.

You will have to integrate with 3 APIs to use our Name Verification service.

With ZWITH, you can verify an individual's name against their names in the Aadhaar and PAN database in 3 steps.

562

Name Match

  • Aadhaar Verification API
  • PAN Verification API
  • Name Verification API

Aadhaar Verification API

First, you need to verify the individual's Aadhaar. Follow the below steps to verify the applicant's Aadhaar.

  1. Send OTP
  2. Download Aadhaar Details

1. Send OTP

You need the Aadhaar holder's consent to get the Aadhaar holder's details from the Aadhaar database. The Aadhaar holder provides this consent in the form of an OTP.

Use the below endpoint to send an OTP to the mobile number linked to the Aadhaar you want to verify.

POST: https://api.zwitch.io/v1/kycs/aadhaar/otp

Below is a sample request and response for the Generate OTP API.

{
  "aadhaar_number": "300000000000",
  "name": "Anil Reddy",
  "merchant_reference_id": "1000921"
}
{
  "id": "adh_ZJr1DD9uZt59qq5oRpcenNqi3",
  "object": "aadhaar_verification",
  "aadhaar_number": "XXXXXXXX0000",
  "name": "Anil Reddy",
  "message": "OTP sent to registered mobile number",
  "status": "success",
  "remark": null,
  "merchant_reference_id": "1000921",
  "created_at": 1654253396,
  "is_sandbox": true
}

2. Download Aadhaar Details

The Aadhaar holder sends you the OTP they received. Use this OTP to get the Aadhaar holder's details from the Aadhaar database.

Use the below endpoint to download the Aadhaar details.

POST: https://api.zwitch.io/v1/kycs/aadhaar/{aadhaar_id}/verify

Below is a sample request and response for the Get Aadhaar Details API.

{
  "otp": "000000"
}
{
  "id": "adh_ZJr1DD9uZt59qq5oRpcenNqi3",
  "object": "aadhaar_verification",
  "message": "Aadhaar XML file downloaded successfully",
  "status": "success",
  "name": "Anil Reddy",
  "aadhaar_number": "XXXXXXXX0000",
  "date_of_birth": "1980-12-31",
  "gender": "M",
  "father_name": "Sunil Reddy",
  "address": "221B Baker Street",
  "postal_code": "560005",
  "state": "Karnataka",
  "state_code": "KA",
  "city": "bangalore urban",
  "remark": null,
  "merchant_reference_id": "1000921",
  "is_sandbox": true
}

PAN Verification API

Next, you need to verify the individual's PAN. You can digitally verify an individual's or business's PAN using our APIs.

Use the below endpoint to verify a PAN.

https://api.zwitch.io/v1/kycs/pan

Below is a sample request and sample response for a PAN Verification API.

{
  "pan": "AAAAA0000A",
  "merchant_reference_id": "102113701",
  "metadata": {
    "key_1": "DD",
    "key_2": "XOF"
  }
}
{
  "id": "pan_NCHHIiDPDKcslUSE86u1DebJ3",
  "object": "pan_verification",
  "pan": "AAAAA0000A",
  "name_on_pan": "Anil Reddy",
  "status": "success",
  "merchant_reference_id": "102113701",
  "message": "PAN verified",
  "metadata": {
    "key_1": "DD",
    "key_2": "XOF"
  },
  "created_at": 1655204222,
  "is_sandbox": true
}

Learn more about our PAN Verification API.

Name Verification API

After verifying an individual's Aadhaar and PAN, you can check if the name in the 2 databases matches using our Name Verification API.

Use the below endpoint to match an individual's name in the Aadhaar and PAN databases.

https://api.zwitch.io/v1/kycs/name-matching

Below is a sample request and sample response for a Name Verification API.

{
  "type": "pan_vs_aadhaar",
  "aadhaar_verification_id": "adh_7s9KK576DBM388bPDH3Di96EA",
  "pan_verification_id": "pan_WlJeh06EkPUIJWsV63TI0sEii",
  "minimum_match_score": 75,
  "metadata": {
    "key_1": "DD",
    "key_2": "XOF"
  }
}
{
  "id": "nm_mNSvW8MNF1nmUdY",
  "type": "pan_vs_aadhaar",
  "object": "name_match.pan_vs_aadhaar",
  "minimum_match_score": 75,
  "status": "success",
  "aadhaar_verification_id": "adh_7s9KK576DBM388bPDH3Di96EA",
  "pan_verification_id": "pan_WlJeh06EkPUIJWsV63TI0sEii",
  "name1": "Anil Reddy",
  "name2": "Anil S Reddy",
  "match_score": 70.83,
  "review_needed": true,
  "metadata": {
    "key_1": "DD",
    "key_2": "XOF"
  },
  "created_at": 1660025733,
  "updated_at": 1660025733,
  "is_sandbox": true
}

Learn more about our Name Verification API.