PAN Verification — Protean

Created by Rajatha B M, Modified on Fri, 27 Mar at 1:14 PM by Rajatha B M

What does the PAN Verification API do?

The PAN Verification API lets you verify the validity and details of a Permanent Account Number (PAN) in real time against the Income Tax Department (ITD) database. It confirms whether the PAN exists and is active, and returns details such as the holder's name, date of birth, and Aadhaar seeding status.

This service is provided by Protean eGov Technologies Ltd on the ULI Platform.

Who can use this API?

Lenders onboarded to the ULI Platform who have subscribed to the PAN Verification service on the Dev Portal. Separate subscriptions are required for Sandbox and Production environments.

What are the prerequisites before I can use this API?

Complete all common platform prerequisites (IP whitelisting, URL whitelisting, credentials, service subscription, and JWT token generation) as described in Getting Started with ULI Platform APIs.

In addition, this API requires:

PFX Certificate (required before Production)

You must procure a Class 3 PFX certificate from a CA (e.g., eMudhra) and complete the following steps:

  1. Share the certificate serial number and a screenshot with Protean for mapping.
  2. Protean will share a User ID after mapping is complete.
  3. Share the User ID, PFX certificate, and PFX password with RBIH for upload to Production.

SSL Certificate (required for API v1.4)

  • Provide a separate SSL certificate for UAT and Production in .cer format, along with your Client ID, to the support team.
  • From v1.4 onwards, API responses are encrypted using your public key derived from this certificate.
  • You must use your SSL private key to decrypt the response. A Java decryption utility will be shared by the support team.
  • Production certificate is configured only after successful UAT sign-off.

What are the API endpoints?

EnvironmentURL
Sandboxhttps://extgw.nonprod.rbihub.io/panverification/1.4/en
Productionhttps://extgw.api.rbihub.io/panverification/1.4/en

Method: POST

Use version 1.3 in the URL for unencrypted responses, or 1.4 for encrypted responses.

What headers do I need to send?

HeaderDescription
AuthorizationJWT token from the authentication server
client-idYour Client ID (Base64 encoded), provided during registration
providerSet to 106 for Protean
x-sp-useridYour Protean User ID
x-sp-record-countNumber of PAN records in the request (typically 1)
x-sp-versionSet to 4
x-env-routeSet to /sb for Sandbox only; omit for Production

What information do I send in the request body?

The request payload must be AES-256 encrypted (AES/GCM/NoPadding algorithm). The decrypted payload contains:

FieldRequiredFormat
panYes10-character alphanumeric
nameYes1–85 characters
fathernameNo0–75 characters
dobYesDD/MM/YYYY

What does the response contain?

In v1.3, the response data is returned in plain JSON. In v1.4, the data field is encrypted — decrypt it using your SSL private key before reading.

Key response fields:

FieldWhat it means
statussuccess or fail
errcodeE000 = success; any other code = error
pan_statusPAN status from the ITD database (see table below)
nameY = name matched; N = not matched
dobY = date of birth matched; N = not matched
seeding_statusY = Aadhaar linked (operative); R = inoperative; NA = non-individual PAN
fathernameFor DCT users: Y/N; blank for non-DCT users

What do the PAN status codes mean?

CodeMeaning
EExisting and Valid
FMarked as Fake
XDeactivated
DDeleted
NNot found / Invalid PAN
EAValid — event: Amalgamation
ECValid — event: Acquisition
EDValid — event: Death
EIValid — event: Dissolution
ELValid — event: Liquidated
EMValid — event: Merger
EPValid — event: Partition
ESValid — event: Split
EUValid — event: Under Liquidation

What do the error codes mean?

Platform error codes:

Error CodeMeaning
E351PAN is invalid
E352PAN marked as fake
E353PAN marked as deactivated
E354PAN marked as deleted
E355PAN not found in ITD database
E356–E364PAN valid but with an event (Amalgamation, Acquisition, Death, Dissolution, Liquidated, Merger, Partition, Split, Under Liquidation)
E365PAN is inoperative
E366Invalid provider User ID
E367Invalid record count in header
E368Invalid provider version
E043Provider-side error — see the info field in the response for the provider error message

Common provider errors (returned under E043):

CodeMessage
2System Error
3Authentication Failure
4User not authorized
6User validity expired
17User ID deactivated
22PAN number invalid or null
24Duplicate Transaction ID
29Date of birth format incorrect — must be DD/MM/YYYY

Who do I contact if the API fails?

Write to support@rbihub.in with the following details:

  • Service name: PAN Verification (Protean / OPV)
  • Environment: Sandbox or Production
  • Provider code: 106
  • Full request payload (headers + body)
  • Error code and message received
  • Screenshot or log of the error
  • Status of prerequisites: IP whitelisting, URL whitelisting, service subscription, token generation

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article