---
title: ADD KYC
description: KYC- Know Your Customer. It is a process by which we can obtain information about the identity and address. The customer can add KYC related documents and details through this API.
---

# KYC - Add KYC

KYC- Know Your Customer. It is a process by which we can obtain information about the identity and address. The customer can add KYC related documents and details through this API.

Note: max 50 UIDs can be shared in single api call. If record already exist, existing record will be overridden and updated. Only new records will be added and existing will be updated.

## POST

```
https://kraken.airpay.co.in/airpay/api/addkyc.php
```

## Header

| Field | Type | Description |
| --- | --- | --- |
| Content-Type | String | application/json |

## Parameter
| Field       | Type   | Required | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ----------- | ------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| username    | String | Yes      | User's username                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| merchant_id | Number | Yes      | Merchant ID (length 1-20)                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| private_key | String | Yes      | Private Key (length 10-200)<br>`private_key = hash('sha256', secret.'@'.username.':\|:'.password)`                                                                                                                                                                                                                                                                                                                                                            |
| checksum    | String | Yes      | Checksum generation:<br>`date = YYYY-MM-DD`<br>`alldata = merchant_id.private_key.kyc_data`<br>Key generated by : `key = hash('SHA256', username."~:~".password)`<br>Checksum generated by : `checksum = hash('SHA256', key.'@'.alldata)`                                                                                                                                                                                                                     |
| UID         | String | Yes      | Customer UID shared by merchant                                                                                                                                                                                                                                                                                                                                                                                                                               |
| kyc_type    | String | Yes      | KYC type (length 2-5)<br>`CN` - Customer Name<br>`EM` - Customer Email<br>`PN` - Phone Number<br>`DL` - Driving Licence<br>`PC` - Pancard<br>`PP` - Passport                                                                                                                                                                                                                                                                                                  |
| kyc_number  | String | Yes      | KYC number (length 8-100)                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| kyc_data    | Json   | No       | KYC data structure example:<br>`[ { "UID": "ehrjdsihogfoejroejfrjwfw9f9ewu49r4m4t9rrtj04", "kycinfo": [ { "kyc_type": "PC", "kyc_number": "321400006787" }, { "kyc_type": "PP", "kyc_number": "321400006787" } ] }, { "UID": "UID", "kycinfo": [ { "kyc_type": "DL", "kyc_number": "2938934hhh3" } ] } ]`<br>SHA256 encryption logic:<br>`kychashkey = hash('SHA256', username."~:~".password);`<br>`kyc_number = hash('SHA256', kychashkey.'@'.kyc_number);` |


## Request-Example:

```
        {
			 	"merchant_id" : "11111",
				"private_key" : "71a4efaf21c79864ec154babfc494f45fd1f65a570805084965d5b29486f1dfe",
				"checksum" : "92c617a556982a8d124ff2b7ce9eae3e",
				"kyc_data" : "[
				  {
				    "UID": "ehrjdsihogfoejroejfrjwfw9f9ewu49r4m4t9rrtj04",
				    "kycinfo": [
				      {
				        "kyc_type": "PC",
				        "kyc_number": "321400006787"
				      },
				     {
				        "kyc_type": "PP",
				        "kyc_number": "321400006787"
				      }
				    ]
				  },
				  {
				   "UID": "UID",
				    "kycinfo": [
				      {
				        "kyc_type": "DL",
				        "kyc_number": "2938934hhh3"
				      }
				    ]
				  }
				]"
			}
```

## Success 200

| Field | Type | Description |
| --- | --- | --- |
| status | Number | Status Code |
| message | String | Status Message for<br>200 : Success, 400 : Failed |
| statusdescription | String | Description of status |

## For Success:

```
HTTP/1.1 200 OK
{

  "status": 200,
  "message": "Success",
  "statusdescription": "Success"

 }
```
## For Failure:
```
  HTTP/1.1 200 OK
  {

  "status": 400,
  "message": "Failed",
  "statusdescription": [
 {
      "ERROR": "Please provide valid merchant ID"
   },
  {
      "ERROR": "Please provide valid Private Key"
   },
 {
     "ERROR": "Please provide valid Checksum"
   }
 ]
}
```