Skip to main content
VerifyAll logo
LiveInstant answerSandbox

PAN Verification API

Confirm a PAN exists, see who holds it and match the name and date of birth your customer typed, in one call.

The documentation opens in the VerifyAll dashboard after sign-in, for accounts with approved API access. New to the API? Start with the developer guide.

Overview

What the PAN Verification API does

The PAN Verification API takes a 10-character PAN and answers with the details held on record for it: whether it is a valid PAN, the type of holder (an individual, a company, a firm, a trust and so on), the name on record, gender and date of birth where the record has them, a masked email and mobile, and whether the PAN is linked to an Aadhaar number.

Send the name and date of birth your customer entered and the API compares them for you. The name match tells you whether the names are the same, likely the same person written differently (initials, order or an extra word) or a different name, with a score from 0 to 100, so your system can approve, ask a question or route the case to a reviewer without string-matching code of your own.

Most lending, insurance, payments, payroll and marketplace sign-ups in India start with a PAN. Checking it at the moment it is typed stops typing errors, borrowed PANs and mismatched names before they reach your ledger, your tax filings or a credit decision.

How it works

  1. 1

    Your server sends POST /universal/pan-verification with the PAN, the consent object (that you hold the person’s consent, and why you run the check) and, if you have them, the name and date of birth to compare.

  2. 2

    The request is checked first: a malformed PAN or a missing field is refused with a list of every problem, before anything runs or is charged.

  3. 3

    The PAN is checked against live records and the answer comes back in the same call, usually within about 3 seconds, in VerifyAll’s standard JSON envelope.

  4. 4

    The result is stored in your VerifyAll account with a checkResultId, so you can read it again, find it by your client_ref and download the same PDF report as a dashboard check.

Request and response

PAN verification API endpoints and fields

The main fields; the full reference with every field, error code and a cURL sample is in the dashboard docs.

Endpoints
EndpointWhat it does
POST/universal/pan-verificationVerify a PAN and compare a name and date of birth

Request fields

PAN Verification API request fields
FieldWhat it is
panRequiredThe PAN to verify, 10 characters (for example ABCDE1234F).
consentRequiredobtained: true and a purpose of up to 200 characters, for the person the PAN belongs to.
nameOptionalThe name your customer gave; sets name_match.
dobOptionalDate of birth, YYYY-MM-DD; sets dob_match.
client_refOptionalYour own reference, stored with the result (up to 100 characters).

What the answer returns

PAN Verification API answer fields
FieldWhat it is
pan_validTrue when the PAN exists; a PAN that does not exist answers record_not_found.
holder_typeindividual, company, huf, firm, trust, government and the other PAN holder types.
nameThe name on record.
name_matchexact, partial, mismatch or not_checked, with a score from 0 to 100.
dob / dob_matchDate of birth on record, and whether the one you sent matches.
genderWhere the record holds it.
aadhaar_linkedWhether the PAN is linked to an Aadhaar number (PAN–Aadhaar link status).
email_masked / mobile_maskedThe email and mobile on record, partly hidden.
addressThe address on record, where the record has one.

Base URL https://api.verifyall.ai. Authenticate with the X-API-Key header (a va_sandbox_ or va_live_ key). Every answer carries data, status_code, success, message and message_code; checks add outcome, checkResultId, charged and charged_amount.

Key features

PAN Verification API features and capabilities

  • Name and date-of-birth match built in

    Send what your customer typed and get exact, partial or mismatch with a 0–100 score, instead of writing fuzzy matching yourself.

  • Holder type from the PAN itself

    Know at once whether a PAN belongs to an individual, a company, a firm, an HUF or a trust, so a business PAN is never accepted on a personal form.

  • PAN–Aadhaar link status

    See whether the PAN is linked to an Aadhaar number, which matters for tax deduction rates and for KYC policies that require a linked PAN.

  • Placeholder PANs refused on live

    The docs’ sample PAN answers on the Sandbox key and is refused on the Production key before any charge, so test data never becomes a real check.

Use cases

Where businesses use the PAN Verification API

  • Loan and credit-card onboarding

    Confirm the applicant’s PAN and name before you pull a credit report or open an account.

  • Payroll and contractor set-up

    Check an employee’s or contractor’s PAN before the first salary or payment, so tax is deducted at the right rate.

  • Seller and partner onboarding

    Verify the PAN a marketplace seller, agent or distributor gives, and check that a business PAN is not entered as a personal one.

  • Insurance and investment KYC

    Match the policyholder’s or investor’s name and date of birth to their PAN at proposal or account opening.

Industries

Coverage

Every PAN issued in India: individuals, companies, firms, HUFs, trusts and the other holder types. The API takes Indian PANs only.

Limitations to plan for

  • The details returned are those on record for the PAN. Fields the record does not hold come back as null, never guessed.
  • A PAN that does not exist answers record_not_found. The lookup ran, so it is charged like any completed check.
  • Checks about a person need the consent object, and you keep the consent record.

Integration

How to integrate the PAN Verification API

From a business account to your first live call.

  1. Step 1

    Create a business account on VerifyAll and get it approved, as for running checks in the dashboard.

  2. Step 2

    Request Developer API access under Developers in the dashboard: the APIs you need, your expected monthly volume and your use case. The VerifyAll team reviews it and shares the API Services Agreement.

  3. Step 3

    Once the agreement is signed and access is approved, create your Sandbox key and build against sample data. Sandbox calls are never charged.

  4. Step 4

    Create your Production key, recharge your wallet and switch the key in your code: the endpoint and fields stay the same.

Get started

Request access to the PAN Verification API

Tell us what you want to verify. We reply within one business day with access steps, Sandbox details and your API pricing.

Tell us about your integration

Tell us what you want to verify and how many checks you expect. Our team replies within one business day with access steps, Sandbox details and your API pricing.

We use these details only to reply to your request. See our privacy policy.

  • Contact sales

    Questions on volumes, onboarding or the API agreement.

    Contact sales
  • View API documentation

    The full reference for PAN Verification API (endpoints, fields, errors, cURL) opens in the dashboard once your access is approved.

    Open the docs (sign-in)
  • Create a business account

    API keys are issued to an approved business account. Sign up, then request access under Developers.

    Create account

Pricing

Production calls are charged per check from your prepaid VerifyAll wallet, at your account’s API price; GST is added separately when you recharge. Sandbox calls are never charged. Your API prices are shown in the dashboard once access is approved. How pricing works

Already have a business account? Sign in to request access

PAN Verification API: frequently asked questions

Answers for teams planning an integration.

Still have questions? Our team is happy to help.

Contact Support

All identity verification APIsRun PAN verification in the dashboard, without codeBrowse the API Marketplace

Start with the PAN Verification API

Request access, build against the Sandbox, then go live with your Production key.