Pan Persona
Introduction
The PAN Persona API is an essential tool for businesses requiring reliable and comprehensive KYC verification. By taking a PAN number as input, it delivers detailed personal and financial information, including name, gender, Aadhaar linkage, employment status, Directorship status, sole proprietorship status.
API details
Endpoint
POST https://api.signzy.app/api/v3/pan/personaPOST https://api-preproduction.signzy.app/api/v3/pan/personaRequest Headers
Name | Value | Required | Description |
|---|---|---|---|
Content-Type | application/json | Mandatory | The type of content that the request body contains. |
Authorization | XXXXXXXXXXXXXXX | Mandatory | An authentication token to authorize the request. Reach out to the Signzy support team to get one created. |
Request body parameters
Parameter | Data Type | Description | Required |
|---|---|---|---|
panNumber | String | pan number of consumer | Mandatory |
Request body
{
"panNumber": "string"
}Code samples
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://api-preproduction.signzy.app/api/v3/pan/persona"
method := "POST"
payload := strings.NewReader(`{
"panNumber": "<panNumber>"
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("Authorization", "<auth token>")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}Response body parameters
Parameter | Data Type | Description |
|---|---|---|
result.name | String | Full name of the individual |
result.number | String | Unique identification number (e.g., Aadhaar) |
result.firstName | String | First name of the individual (Will be blank for non-Individual PANs) |
result.middleName | String | Middle name of the individual (Will be blank for non-Individual PANs) |
result.lastName | String | Last name of the individual (Will be blank for non-Individual PANs) |
result.typeOfHolder | String | Type of holder (e.g., Individual or Person) |
result.gender | String | Gender of the individual |
result.isIndividual | Boolean | Indicates if the holder is an individual |
result.category | String | Category of the holder (e.g., person) |
result.dateOfBirth | String | Date of birth of the individual |
result.maskedAadhaarNumber | String | Masked Aadhaar number |
result.emailId | String | Email address of the individual [Deprecated] |
result.mobileNumber | String | Mobile number of the individual [Deprecated] |
result.aadhaarLinked | Boolean | Indicates if Aadhaar is linked |
result.address | Object | Full address of the individual [Deprecated] |
result.address.fullAddress | String | Complete address including all components |
result.address.addressLineOne | String | Address line 1 |
result.address.addressLineTwo | String | Address line 2 (if any) |
result.address.street | String | Street name |
result.address.city | String | City name |
result.address.state | String | State name |
result.address.pincode | String | Pincode of the address |
result.address.country | String | Country name |
result.isValid | Boolean | Indicates if the data is valid |
result.panStatus | String | PAN status (e.g., VALID) |
result.panStatusCode | String | PAN status code (e.g., E for valid) |
result.isDirector | String | Indicates if the individual is a director |
result.soleProprietorStatus | String | Indicates if the individual is sole proprietership |
result.isSalaried | String | Indicates if the individual is salaried |
// When request for invalid pan number.
{
"error": {
"reason": "PAN number is not valid",
"status": 400,
"type": "BAD_REQUEST",
"message": "Bad Request",
"statusCode": 400,
"name": "error"
}
}Status codes
PAN Status codes
Status Code | Description |
|---|---|
E | Existing and Valid |
F | Marked as Fake |
X | Marked as Deactivated |
D | Deleted |
N | Record (PAN) Not Found in ITD Database/Invalid PAN |
EA | Existing and Valid but event marked as Amalgamation |
EC | Existing and Valid but event marked as Acquisition |
ED | Existing and Valid but event marked as Death |
EI | Existing and Valid but event marked as Dissolution |
EL | Existing and Valid but event marked as Liquidated |
EM | Existing and Valid but event marked as Merger |
EP | Existing and Valid but event marked as Partition |
ES | Existing and Valid but event marked as Split |
EU | Existing and Valid but event marked as Under Liquidation |
Contact Us for Any Assistance
If you have any questions or need assistance, please reach out to our customer support team. You can contact us via email at [email protected]. We strive to provide prompt and reliable assistance, ensuring your queries are addressed effectively.
We value your feedback and are committed to making your experience smooth and enjoyable. Our team is dedicated to assisting you with any needs you may have. Thank you for choosing our services. We look forward to helping you!