India PAN Verification API (Permanent Account Number)
Validate India tax identification against Permanent Account Number in real time, billed only on conclusive results. Endpoint, parameters, response schema, pricing, and integration.

Onboarding users in India means confirming they are who they claim to be. Verifies input data against the database of the Income Tax Department of India. A document or a typed-in detail only proves the data exists — not that it is genuine or belongs to the person in front of you. India PAN Verification (Permanent Account Number) closes that gap by checking the data against Permanent Account Number. This guide explains what the check does, the exact technical details, and how to integrate it in minutes.
Key takeaways:
- What it checks — India PAN Verification (Permanent Account Number) validates tax identification against Permanent Account Number.
- What you get back — a normalized
match_typeplus field-level results you can route straight into approve / review / reject logic. - Why it matters — Tax-ID validation ties an applicant to a verifiable fiscal identity, reducing synthetic-identity and first-party fraud.
- How to use it — one
POSTto Didit's database-validation endpoint, or a no-code workflow module. $0.84 per conclusive query, results in seconds.
What India PAN Verification (Permanent Account Number) validates
Verifies input data against the database of the Income Tax Department of India. Didit exposes it through a single endpoint so you can verify the submitted data against the national tax authority and receive a structured, normalized result — not a raw registry dump you have to parse yourself.
A conclusive response returns the matched source_data and a per-field validation block, so your risk engine gets a clear, machine-readable verdict.
Why it matters
Tax-ID validation ties an applicant to a verifiable fiscal identity, reducing synthetic-identity and first-party fraud.
For regulated businesses in India — fintechs, crypto platforms, lenders, marketplaces, and gaming operators — checking against an authoritative source produces a defensible, auditable record that identity was confirmed at the source, not merely captured from a form or a photo.
Technical details
Didit exposes this service through the unified database-validation endpoint. It is a single POST — no SDK required.
Endpoint
POST /v3/database-validation/
Request parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
issuing_state | string | Yes | ISO 3166-1 alpha-3 country code. Use IND. |
services | string | Yes | Service identifier. Use ind_pan_permanent_account_number. |
full_name | string | Yes | Full name. |
date_of_birth | string | Yes | Date of birth. |
pan | string | Yes | Pan. |
Example request
curl -X POST "https://verification.didit.me/v3/database-validation/" \
-H "x-api-key: YOUR_API_KEY" \
-F "issuing_state=IND" \
-F "services=ind_pan_permanent_account_number" \
-F "full_name=John Doe" \
-F "date_of_birth=1990-01-01" \
-F "pan=ABCDE1234F"
Example response (conclusive match)
{
"request_id": "req_01H...",
"status": "Approved",
"issuing_state": "IND",
"match_type": "full_match",
"validations": [
{
"outcome_code": "MATCH",
"service_id": "ind_pan_permanent_account_number",
"service_name": "India PAN (Permanent Account Number) (ITD)",
"source_data": {
"date_of_birth": "1990-01-01",
"identification_number": "SAMPLE-ID-12345",
"verifications": {
"date_of_birth": true,
"identification_number": true
}
},
"validation": {
"date_of_birth": "full_match",
"identification_number": "full_match"
}
}
]
}
Performance and billing
- Latency: typically a couple of seconds.
- Cost: $0.84 per conclusive query. You are billed only on conclusive results — no charge for source downtime, missing fields, or pre-source rejections.
- Reliability: runs on Didit's infrastructure with a 99.9% quarterly uptime target.
- Consent: this service requires documented end-user consent. Capture and store it before you call the endpoint.
Use cases
- Fintech & neobanks — confirm a real, verifiable account holder before opening a wallet or extending credit in India.
- Crypto & Web3 — meet VASP onboarding requirements with authoritative-source identity proof.
- Lending — reduce synthetic-identity and first-party fraud with source-verified data.
- Marketplaces & gig platforms — verify users against authoritative data, not just a self-reported form.
- iGaming — satisfy identity and eligibility checks for India players with an auditable trail.
How to integrate with Didit
You can run India PAN Verification (Permanent Account Number) two ways:
- No-code workflow. In the Didit Business Console, open the Workflow Builder, add the Database Validation module, select India → India PAN Verification (Permanent Account Number), and activate it. Matching users are routed automatically — no engineering required.
- Direct API. Call the
/v3/database-validation/endpoint shown above withservices=ind_pan_permanent_account_number. Readmatch_typeand the per-fieldvalidationblock to drive your approve / review / reject logic.
Every Didit account includes 500 free verifications per month, so you can test the full flow end-to-end before you pay for a single query.
Frequently asked questions
What does the India PAN Verification (Permanent Account Number) check confirm?
It validates the submitted data against Permanent Account Number and returns a normalized match result, so you learn whether the tax identification exists at the authoritative source and which fields matched.
What happens if the source is temporarily unavailable?
You are not charged. Billing applies only to conclusive results — source downtime, missing fields, and pre-source rejections are free.
How fast is the check?
Database validation typically returns in a couple of seconds, so it fits inside a real-time onboarding flow.
Do I need an SDK?
No. The check is a single HTTPS POST to one endpoint. You can also wire it into a no-code workflow in the Business Console.
Ready to get started?
Validate your first India tax identification today.
- Read the API reference: India PAN Verification (Permanent Account Number)
- See all database validations: Database Validation pricing & coverage
- Start building: Create a free Didit account — 500 verifications a month, free.