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

# API

<Warning>
  Tazamatch is coming soon. The APIs listed here are for reference only and are not yet available in production or sandbox.
</Warning>

This page walks through how to use Tazamatch via API. For full request and response schemas, and error codes, refer to the [API Reference > TazaMatch](https://developer.tazapay.com/API-Reference/tazapay-api/tazamatch/overview).

## Step 1 → Check corridor capability

Before submitting a verification, confirm that the target corridor is supported and retrieve the required fields.

GET`/v3/verification/payee/metadata`

Pass the destination country, currency, and bank. The response returns:

* Whether the corridor is supported
* Required bank fields and bank codes
* Required payee fields (including whether tax\_id is needed)
* Capabilities supported for that corridor (name check, name return)

If the corridor is not supported, the response will indicate so. Do not proceed with a verification request for unsupported corridors.

[See full schema in API Reference > TazaMatch > Fetch Verification Metadata](https://developer.tazapay.com/API-Reference/tazapay-api/tazamatch/fetch-verification-metadata)

## Step 2 → Submit a verification

POST`/v3/verify/payee`

Choose the mode that fits your workflow:

### Mode A → Standalone

Pass account details directly. No beneficiary object is created.

```json theme={null}
{
  "beneficiary_details": {
    "name": "John Doe",
    "type": "individual",
    "bank": {
      "account_number": "XXXXXXXXXX",
      "country": "IN",
      "currency": "INR",
      "ifsc_code": "XXXXXXXXXX"
    }
  }
}
```

### Mode B → Inline with new beneficiary

Pass verify: true when creating a new beneficiary. Verification runs as part of the same call.

```json theme={null}
{
  "name": "John Doe",
  "type": "individual",
  "bank": { ... },
  "verify": true
}
```

### Mode C → Existing beneficiary

Pass a beneficiary\_id to verify a payee already stored in Tazapay.

```json theme={null}
{
  "beneficiary_id": "bene_xxxx"
}
```

All three modes return a verification object with a pyv\_xxxx ID and an initial status of pending.

[See full schema in API Reference > TazaMatch > Create Verification](https://developer.tazapay.com/API-Reference/tazapay-api/tazamatch/create-verification)

## Step 3 → Retrieve the result

### Fetch a specific verification

GET`/v3/verification/payee/{id}`

Pass the pyv\_xxxx ID returned in Step 2. Poll this endpoint until the status resolves to a terminal state (valid, invalid, or not\_supported).

[See full schema in API Reference > TazaMatch > Fetch Verification](https://developer.tazapay.com/API-Reference/tazapay-api/tazamatch/fetch-verification)

### List all verifications

GET`/v3/verifications/payee`

Returns all verifications under your account. Use query parameters to filter by status, corridor, or date range.

[See full schema in API Reference > TazaMatch > List Verifications](https://developer.tazapay.com/API-Reference/tazapay-api/tazamatch/list-verifications)

***
