---
title: "Mock verify PAN"
method: POST
path: "/api/v1/sub-accounts/test/{sub_auth_id}/kyc/verify-pan"
tags: ["Sub-Account KYC (Test Mode)"]
---

# Mock verify PAN

`POST /api/v1/sub-accounts/test/{sub_auth_id}/kyc/verify-pan`

## Request

- Base URL: `https://api.vobiz.ai`
- URL: `https://api.vobiz.ai/api/v1/sub-accounts/test/{sub_auth_id}/kyc/verify-pan`
- Auth: API key in header `X-Auth-ID` and API key in header `X-Auth-Token`
- TypeScript: <https://skmtc.dev/vobiz/apis/vobiz-api/docs/api/v1/sub-accounts/test/:sub_auth_id/kyc/verify-pan/post.ts> (a function with typed inputs; its response is checked against the schema)

Mock PAN verification — never hits the provider. Magic `pan` inputs:

| Input | Outcome |
|---|---|
| `TESTSUCCESS0001` | verified |
| `TESTFAIL0001` | failed |
| `TESTERROR0001` | HTTP 500 |
| `TESTPENDING001` | pending (finalize as verified) |
| `TESTPENDING_FAIL` | pending (finalize as failed) |

Persists a real `kyc_verifications` row and recomputes `kyc_status`.

## Path parameters

- `sub_auth_id` string, required

## Request body

- object
  - `pan` string, required

## Response `200`

Mock verification result

- KycVerificationResult: Outcome of a single KYC verification step.
  - `verification_type` 'pan' | 'gst' | 'cin' | 'aadhaar', required
  - `status` 'verified' | 'failed' | 'pending', required
  - `kyc_calls_blocked` boolean: Recomputed sub-account call-blocking state after this verification.
  - `mock` boolean: Present and `true` on responses from the test-mode endpoints.

---

[API](https://skmtc.dev/vobiz/apis/vobiz-api.md) - [All operations](https://skmtc.dev/vobiz/apis/vobiz-api/llms.txt) - [OpenAPI document](https://skmtc.dev/vobiz/apis/vobiz-api/revisions/863f08cd6737?raw)
