---
title: "PAN Card Verification"
description: "Verify Individual and Corporate PAN cards instantly via Income Tax NSDL/UTIITSL databases with fuzzy name matching."
order: 2
category: "Identity Verification (KYC)"
updated: "2026-10-13"
isNew: true
---

# PAN Card Verification

Verify Indian Permanent Account Numbers (PAN) directly against official records in milliseconds. AuthSetu validates formatting, authenticates active status, and returns the registered cardholder name with optional fuzzy matching.

## Endpoint

```http
POST /v1/verifications/pan
```

### Headers

| Header | Value | Required |
| :--- | :--- | :--- |
| `Authorization` | `Bearer as_test_...` (or `as_live_...`) | Yes |
| `Content-Type` | `application/json` | Yes |
| `Idempotency-Key` | `UUIDv4` string | Optional |

### Request Body

```json
{
  "id_number": "ABCDE1234F",
  "name": "Aarav Sharma",
  "customer_ref": "cust_usr_991823",
  "consent": true
}
```

### Parameters

- `id_number` *(string, required)*: 10-character PAN string matching regex `^[A-Z]{5}[0-9]{4}[A-Z]$`.
- `name` *(string, optional)*: Full legal name of the individual or enterprise for fuzzy matching.
- `customer_ref` *(string, optional)*: Your internal tracking reference ID.
- `consent` *(boolean, required)*: User consent declaration acknowledging identity verification.

---

## Response Schema

```json
{
  "success": true,
  "data": {
    "request_id": "req_pan_0192837465ab",
    "status": "verified",
    "verification_type": "pan",
    "pan": "ABCDE1234F",
    "name_on_card": "AARAV SHARMA",
    "category": "individual",
    "is_valid": true,
    "name_match_score": 1.0,
    "verified_at": "2026-10-13T13:30:00Z"
  }
}
```

## Deterministic Sandbox Testing

When testing with your sandbox key (`as_test_...`), test PAN numbers return instant deterministic fixtures:

- `ABCDE1234F`: Individual PAN verified (`name_on_card`: "Aarav Sharma")
- `XYZPE9999K`: Enterprise/Company PAN verified (`category`: "company")
- `ABCDE0000F`: Invalid PAN returns status `rejected`
- Any valid format PAN (e.g. `AAAAA1111A`) returns a generated mock verified record.
