> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stablepay.global/llms.txt
> Use this file to discover all available pages before exploring further.

# Verify PAN

> Verify user PAN card

# Verify PAN

Verifies the user's PAN card against government database.

<ParamField body="panNumber" type="string" required>
  10-character PAN number (e.g., ABCDE1234F)
</ParamField>

<ParamField body="name" type="string">
  Name to match against (2-255 chars). If omitted, the verified Aadhaar name is used.
</ParamField>

<ParamField body="deviceId" type="string">
  Device fingerprint/ID for FIU compliance. Must be captured from the client device.
</ParamField>

## Request

```bash theme={null}
curl -X POST https://api.stablepay.global/v2/users/usr_abc123/kyc/pan/verify \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "panNumber": "ABCDE1234F",
    "deviceId": "device-fingerprint-12345"
  }'
```

## Response

```json theme={null}
{
  "success": true,
  "data": {
    "verified": true,
    "name": "RAHUL KUMAR",
    "maskedPan": "XXXXX1234X",
    "nameMatchScore": 95
  }
}
```

`nameMatchScore` is an integer from 0-100, or `null` when there was no name to match against.

## Errors

| `error`               | Description                              |
| --------------------- | ---------------------------------------- |
| `Validation Error`    | Invalid PAN format                       |
| `Already Verified`    | PAN is already verified for this user    |
| `Verification Failed` | PAN not found in the government database |
| `Not Found`           | User not found                           |
