> ## 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.

# List Verifications

> This lets you retrieve a paginated list of verifications.

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

```bash cURL theme={null}
curl --request GET \
  --url 'https://service-sandbox.tazapay.com/v3/verifications/payee?beneficiary=bnf_xxxx&limit=10' \
  --header 'Authorization: Basic <encoded-value>'
```

```json 200 theme={null}
{
  "status": "success",
  "message": "",
  "data": {
    "object": "list",
    "has_more": false,
    "data": [
      {
        "id": "ver_xxxx",
        "object": "verification",
        "verification_status": "valid",
        "status_description": "",
        "beneficiary": "bnf_xxxx",
        "beneficiary_details": {
          "type": "individual",
          "address": {
            "city": "Mumbai",
            "country": "IN",
            "line1": "123 Main Street",
            "line2": null,
            "postal_code": "400001",
            "state": "Maharashtra"
          },
          "phone": {
            "calling_code": "+91",
            "number": "9876543210"
          },
          "tax_id": null,
          "destination": "bnk_xxxx"
        },
        "destination_details": {
          "type": "bank",
          "local_payment_network": null
        },
        "verified_information": {
          "match_details": {
            "type": "continuous",
            "value": 0.97,
            "summary": "strong_match"
          },
          "account_exists": true,
          "matched_name_details": {
            "matched_name_translation": null,
            "corrected_name_returned": null
          },
          "beneficiary_type": "individual",
          "bank": {
            "account_number": "9876543210",
            "account_type": "savings",
            "bank_codes": {
              "ifsc_code": "HDFC0001234"
            },
            "bank_name": "HDFC Bank",
            "branch_name": null,
            "address": null,
            "country": "IN",
            "currency": "INR",
            "payment_scheme_eligibility": null
          },
          "additional_information": null
        },
        "metadata": null,
        "reference_id": null,
        "created_at": "2026-04-07T10:00:00Z",
        "updated_at": "2026-04-07T10:00:05Z"
      }
    ]
  }
}
```

# List Verifications

GET `/v3/verifications/payee`

Returns verification objects in reverse chronological order. Use the
`beneficiary` filter to retrieve all verifications linked to a specific
beneficiary, or use `created` filters to narrow by date range.

#### Authorizations

<ParamField header="Authorization" type="string" required>
  Basic authentication header of the form `Basic <encoded-value>`, where
  `<encoded-value>` is the base64-encoded string `username:password`.
</ParamField>

#### Query Parameters

<ParamField query="beneficiary" type="string">
  Filter by beneficiary ID (`bnf_xxxx`). Returns all verifications linked
  to the specified beneficiary.
</ParamField>

<ParamField query="limit" type="integer">
  Number of objects to return. Default: `10`. Range: `1–100`.
</ParamField>

<ParamField query="starting_after" type="string">
  Cursor for forward pagination. Pass the `id` of the last object from
  the previous page.
</ParamField>

<ParamField query="ending_before" type="string">
  Cursor for backward pagination. Pass the `id` of the first object from
  the current page.
</ParamField>

<ParamField query="created" type="object">
  Filter by creation time. Supports `gt`, `gte`, `lt`, `lte` as Unix
  timestamps (e.g. `created[gte]=1700000000`).
</ParamField>

#### Response

<ResponseField name="object" type="string">
  Fixed value: `list`.
</ResponseField>

<ResponseField name="has_more" type="boolean">
  Whether more objects exist beyond the current page.
</ResponseField>

<ResponseField name="data" type="array">
  List of verification objects in reverse chronological order.

  <Expandable title="data[]">
    <ResponseField name="id" type="string">
      Unique identifier for the verification object. Prefix: `ver_`.
    </ResponseField>

    <ResponseField name="object" type="string">
      Fixed value: `verification`.
    </ResponseField>

    <ResponseField name="verification_status" type="enum">
      Status of the verification. Allowed: `valid`, `invalid`, `pending`,
      `not_supported`.
    </ResponseField>

    <ResponseField name="status_description" type="string">
      Human-readable description of the verification status.
    </ResponseField>

    <ResponseField name="beneficiary" type="string">
      ID of the saved beneficiary used (`bnf_xxxx`). `null` for inline
      verifications.
    </ResponseField>

    <ResponseField name="beneficiary_details" type="object">
      Echo of the beneficiary details submitted in the original request or
      retrieved from the saved beneficiary object.

      <Expandable title="beneficiary_details">
        <ResponseField name="type" type="string">
          Type of beneficiary entity (`individual` or `business`).
        </ResponseField>

        <ResponseField name="address" type="object">
          <Expandable title="address">
            <ResponseField name="city" type="string">City of the beneficiary.</ResponseField>
            <ResponseField name="country" type="string">Country of the beneficiary (ISO 3166-1 alpha-2).</ResponseField>
            <ResponseField name="line1" type="string">First line of the street address.</ResponseField>
            <ResponseField name="line2" type="string">Second line of the street address.</ResponseField>
            <ResponseField name="postal_code" type="string">Postal or ZIP code.</ResponseField>
            <ResponseField name="state" type="string">State or province of the beneficiary.</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="phone" type="object">
          <Expandable title="phone">
            <ResponseField name="calling_code" type="string">International dialing code (e.g. `+91` for India).</ResponseField>
            <ResponseField name="number" type="string">Phone number of the beneficiary.</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="tax_id" type="string">
          Tax identification number of the beneficiary.
        </ResponseField>

        <ResponseField name="destination" type="string">
          ID of the destination object associated with this beneficiary.
          `null` if inline `destination_details` were passed.
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="destination_details" type="object">
      Destination details echoed from the original request.

      <Expandable title="destination_details">
        <ResponseField name="type" type="string">
          Type of payout destination (e.g. `bank`, `local_payment_network`).
        </ResponseField>

        <ResponseField name="local_payment_network" type="object">
          Present when `destination_details.type = local_payment_network`.

          <Expandable title="local_payment_network">
            <ResponseField name="type" type="string">Type of local payment network (e.g. `pix_brl`, `upi_inr`).</ResponseField>
            <ResponseField name="deposit_key" type="string">Deposit key for the network.</ResponseField>
            <ResponseField name="deposit_key_type" type="string">Type of deposit key.</ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="verified_information" type="object">
      Provider-returned verification result. Present when
      `verification_status = valid`.

      <Expandable title="verified_information">
        <ResponseField name="match_details" type="object">
          <Expandable title="match_details">
            <ResponseField name="type" type="string">Scoring methodology used by the provider (e.g. `continuous`, `discrete`).</ResponseField>
            <ResponseField name="value" type="float">Normalised confidence score from 0 to 1 as returned by the provider.</ResponseField>
            <ResponseField name="summary" type="enum">Tazapay normalised match classification. Allowed: `strong_match`, `partial_match`, `weak_match`, `no_match`.</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="account_exists" type="boolean">
          Indicates whether the account was found and recognised at the bank.
        </ResponseField>

        <ResponseField name="matched_name_details" type="object">
          <Expandable title="matched_name_details">
            <ResponseField name="matched_name_translation" type="string">Translation of the matched name in local script, if available.</ResponseField>
            <ResponseField name="corrected_name_returned" type="string">Corrected or suggested name returned by the provider where a close but imperfect match was found.</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="beneficiary_type" type="string">
          Whether the account belongs to an `individual` or `business`.
        </ResponseField>

        <ResponseField name="bank" type="object">
          <Expandable title="bank">
            <ResponseField name="account_number" type="string">Bank account number of the beneficiary.</ResponseField>
            <ResponseField name="account_type" type="string">Type of bank account (e.g. `savings`, `current`, `checking`).</ResponseField>

            <ResponseField name="bank_codes" type="object">
              Container for bank routing identifiers.
            </ResponseField>

            <ResponseField name="bank_name" type="string">Name of the beneficiary's bank.</ResponseField>
            <ResponseField name="branch_name" type="string">Name or identifier of the bank branch.</ResponseField>
            <ResponseField name="address" type="string">Address of the beneficiary's bank as returned by the provider.</ResponseField>
            <ResponseField name="country" type="string">Country where the bank account is held (ISO 3166-1 alpha-2).</ResponseField>
            <ResponseField name="currency" type="string">Currency of the bank account (ISO 4217).</ResponseField>
            <ResponseField name="payment_scheme_eligibility" type="string">Payment schemes the account is eligible for. Applicable to IBAN corridors only (e.g. `SEPA Credit Transfer`, `SEPA Instant`).</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="additional_information" type="object">
          Additional provider-specific information. Not consistently
          available across all corridors.

          <Expandable title="additional_information">
            <ResponseField name="transaction_activity_details" type="object">
              Transaction activity details returned by the provider (Kinexys only).

              <Expandable title="transaction_activity_details">
                <ResponseField name="transaction_activity" type="boolean">Indicates whether recent transaction activity was detected on the account.</ResponseField>
                <ResponseField name="transaction_activity_since" type="date">Date from which transaction activity was checked.</ResponseField>
              </Expandable>
            </ResponseField>
          </Expandable>
        </ResponseField>
      </Expandable>
    </ResponseField>

    <ResponseField name="metadata" type="object">
      Key-value map of merchant-defined metadata. Echoed from the original
      request if provided. Max 10 keys; string values ≤ 500 chars each.
    </ResponseField>

    <ResponseField name="reference_id" type="string">
      Your reference ID echoed from the original request.
    </ResponseField>

    <ResponseField name="created_at" type="timestamp">
      Timestamp when the verification object was created.
    </ResponseField>

    <ResponseField name="updated_at" type="timestamp">
      Timestamp of the last status update.
    </ResponseField>
  </Expandable>
</ResponseField>
