Skip to content

PAN to CIN

Find the Corporate Identification Number (CIN) linked to a PAN. Returns the company name, CIN, and entity name — useful for cross-referencing company identity.

Endpoint

POST /vas-api/v1/pan-to-cin

Authentication

Requires OAuth2 Bearer token. Get your credentials →

Request

Headers

HeaderTypeRequiredDescription
AuthorizationstringYesBearer YOUR_ACCESS_TOKEN
Content-TypestringYesapplication/json

Body parameters

FieldTypeRequiredDescriptionExample
panstringYes10-character PAN numberABCDE1234F

Example request

bash
curl -X POST https://api.api4business.com/vas-api/v1/pan-to-cin \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"pan": "ABCDE1234F"}'
python
import requests

response = requests.post(
  "https://api.api4business.com/vas-api/v1/pan-to-cin",
  headers={
    "Authorization": "Bearer YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
  },
  json={"pan": "ABCDE1234F"}
)
print(response.json())
javascript
const response = await fetch(
  "https://api.api4business.com/vas-api/v1/pan-to-cin",
  {
    method: "POST",
    headers: {
      "Authorization": "Bearer YOUR_ACCESS_TOKEN",
      "Content-Type": "application/json"
    },
    body: JSON.stringify({ pan: "ABCDE1234F" })
  }
);
console.log(await response.json());
java
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
  .uri(URI.create("https://api.api4business.com/vas-api/v1/pan-to-cin"))
  .header("Authorization", "Bearer YOUR_ACCESS_TOKEN")
  .header("Content-Type", "application/json")
  .POST(HttpRequest.BodyPublishers.ofString("{\"pan\": \"ABCDE1234F\"}"))
  .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());

Response

Success (200)

FieldTypeDescription
okbooleantrue if successful
responseCodenumberHTTP status code
messagestringStatus message
body.panstringThe PAN that was queried
body.cinstringCorporate Identification Number linked to the PAN
body.entityNamestringRegistered name of the company

Example response

json
{
  "ok": true,
  "responseCode": 200,
  "message": "Transmission OK",
  "body": {
    "pan": "ABCDE1234F",
    "cin": "U72900MH2017PTC295173",
    "entityName": "SAMPLE SOLUTIONS PRIVATE LIMITED"
  }
}

Response headers

HeaderDescription
x-request-idUnique request identifier — log this for debugging and support

Error responses

StatusError CodeMessageResolution
400400Invalid PANCheck PAN is 10 characters (5 alpha + 4 digits + 1 alpha)
400400Invalid RequestVerify JSON body contains pan field
401401Invalid CredentialsAccess token expired — request a new one
429429Quota ViolationRate limit exceeded — retry with backoff
500500Internal Server ErrorRetry after delay
503503Service Not AvailableMCA service temporarily down — retry

No CIN found?

If the PAN is not linked to a registered company, the response body may be empty or contain a specific message. This does not mean the PAN is invalid — it means no CIN is registered against it. Use PAN Verification to validate the PAN itself.

Released under the API4Business Terms of Service