> ## Documentation Index
> Fetch the complete documentation index at: https://doc-test-my.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Fetch All Fund Accounts

> Fetch all Fund Accounts using API.

Use this endpoint to retrieve all fund accounts.

<RequestExample>
  ```bash Curl theme={null}
  curl -u [YOUR_KEY_ID]:[YOUR_KEY_SECRET] \
  -X GET https://api.razorpay.com/v1/fund_accounts
  ```
</RequestExample>

<ResponseExample>
  ```json Success theme={null}
  {
    "entity": "collection",
    "count": 3,
    "items": [
    {
    "id": "fa_00000000000001",
    "entity": "fund_account",
    "contact_id": "cont_00000000000001",
    "account_type": "bank_account",
    "bank_account": {
      "ifsc": "HDFC0000053",
      "bank_name": "HDFC Bank",
      "name": "Gaurav Kumar",
      "account_number": "765432123456789",
      "notes": []
    },
    "active": false,
    "batch_id": null,
    "created_at": 1545312598
    },
    {
    "id": "fa_00000000000002",
    "entity": "fund_account",
    "contact_id": "cont_00000000000001",
    "account_type": "vpa",
    "vpa": {
      "username": "gaurav.kumar",
      "handle": "exampleupi",
      "address": "gaurav.kumar@exampleupi"
    },
    "active": true,
    "batch_id": null,
    "created_at": 1545313478
    },
    {
    "id": "fa_00000000000001",
    "entity": "fund_account",
    "contact_id": "cont_00000000000001",
    "account_type": "card",
    "card": {
      "name": "Gaurav Kumar",
      "last4": "6789",
      "network": "Visa",
      "type": "credit",
      "issuer": "HDFC"
    },
    "active": false,
    "batch_id": null,
    "created_at": 1545312598
    }
   ]
  }
  ```
</ResponseExample>

## Query Parameters

<ParamField query="account_type" type="string">
  The fund account type to be retrieved. Possible values:

  * `bank_account`
  * `vpa`
  * `card` (if [payouts to cards](/docs/x/payouts/cards) is enabled on your account)
</ParamField>

<ParamField query="contact_id" type="string">
  The unique contact ID for which fund accounts are to be retrieved. For example, `cont_00000000000001`.
</ParamField>

<ParamField query="from" type="integer">
  Timestamp, in Unix, from when fund accounts are to be retrieved.
</ParamField>

<ParamField query="to" type="integer">
  Timestamp, in Unix, till when fund accounts are to be retrieved.
</ParamField>

<ParamField query="count" type="integer">
  The number of fund accounts to be retrieved. Default = `10`. Maximum = `100`. This can be used for pagination, in combination with `skip`.
</ParamField>

<ParamField query="skip" type="integer">
  The number of fund accounts to be skipped. Default = `0`. This can be used for pagination, in combination with `count`.
</ParamField>

## Response Parameters

<ResponseField name="id" type="string">
  The unique identifier linked to the fund account validation. For example, `fav_0000000001`.
</ResponseField>

<ResponseField name="entity" type="string">
  Here it is `fund_account.validation`.
</ResponseField>

<ResponseField name="status" type="string">
  The status of the account validation transaction.
  Possible values:

  * `created`
  * `completed`
  * `failed`
</ResponseField>

<ResponseField name="validation_results" type="object">
  Details extracted from the results of the fund account validation.
</ResponseField>

<ResponseField name="account_status" type="string">
  Displays if the account is valid or not.
  Possible values:

  * `active`
  * `invalid`
</ResponseField>

<ResponseField name="registered_name" type="string">
  The name linked to the account. For example,`Gaurav Kumar` or `null`.
</ResponseField>

<ResponseField name="details" type="string">
  Brief description of the validation.
</ResponseField>

<ResponseField name="name_match_score" type="string">
  The percentage score indicating how closely the account holder's name matches the records.
</ResponseField>

<ResponseField name="validated_account_type" type="string">
  Here it is `bank_account`.
</ResponseField>

<ResponseField name="bank_account" type="object">
  The contact's bank account details.
</ResponseField>

<ResponseField name="bank_routing_code" type="string">
  Beneficiary bank IFSC. For example, `HDFC0000053`.
</ResponseField>

<ResponseField name="account_number" type="string">
  Beneficiary account number. For example, `765432123456789`.
</ResponseField>

<ResponseField name="bank_name" type="string">
  The contact's bank name. For example, `HDFC`.
</ResponseField>

<ResponseField name="account_type" type="string">
  The account type being validated. For example `savings`, `current`.
</ResponseField>

<ResponseField name="status_details" type="object">
  Status of the fund account validation.
</ResponseField>

<ResponseField name="description" type="string">
  A brief description stating if the validation is complete or not.
</ResponseField>

<ResponseField name="source" type="string">
  The source from which validation was done. For example, `beneficiary_bank`
</ResponseField>

<ResponseField name="reason" type="string">
  Reason for validation.
</ResponseField>

<ResponseField name="reference_id" type="string">
  Unique reference\_id generated for the validation transaction.
</ResponseField>

<ResponseField name="fund_account" type="object">
  The details of the fund account which was validated.
</ResponseField>

<ResponseField name="id" type="string">
  The unique identifier linked to the fund account. For example, `fa_00000000000001`.
</ResponseField>

<ResponseField name="entity" type="string">
  Here it is `fund_account`.
</ResponseField>

<ResponseField name="account_type" type="string">
  Fund account type.
</ResponseField>

<ResponseField name="vpa" type="object">
  The details associated with the account holder's virtual payment address.
</ResponseField>

<ResponseField name="address" type="string">
  The virtual payment address of the contact whose account is validated. For example, `gaurav.kumar@exampleupi`
</ResponseField>

<ResponseField name="active" type="boolean">
  Possible values of fund account status:

  * `true`: active
  * `false`: inactive
</ResponseField>

<ResponseField name="created_at" type="integer">
  Timestamp, in unix, when the fund account was created. For example, `1543650891`.
</ResponseField>

<ResponseField name="contact" type="object">
  The contact's details.
</ResponseField>

<ResponseField name="id" type="string">
  The unique identifier linked to the contact. For example, `cont_00000000000001`.
</ResponseField>

<ResponseField name="entity" type="string">
  Here it is `contact`
</ResponseField>

<ResponseField name="name" type="string">
  Account holder's name. For example,`Gaurav Kumar`.
</ResponseField>

<ResponseField name="email" type="string">
  Email address of the contact.
</ResponseField>

<ResponseField name="contact" type="string">
  Phone number of the contact.
</ResponseField>

<ResponseField name="type" type="string">
  Contact Type. For example, `employee`, `contractor`.
</ResponseField>

<ResponseField name="reference_id" type="string">
  Reference id associated with the contact.
</ResponseField>

<ResponseField name="active" type="boolean">
  Possible values of contact status:

  * `true`: active
  * `false`: inactive
</ResponseField>

## Errors

<AccordionGroup>
  <Accordion
    title="`<fund account id>
` is not a valid id."
  >
    **Code:** `4xx`

    The fund account ID entered is invalid.

    **Solution:** Re-check or find the Fund Account ID:

    * In the response body of [create a Fund Account](/docs/api/x/fund-accounts) API.
    * On the [RazorpayX Dashboard](https://x.razorpay.com/auth).
  </Accordion>
</AccordionGroup>
