---
title: "(Deprecated) List bank transfers"
method: POST
path: "/bank_transfer/list"
tags: ["plaid"]
deprecated: true
---

# (Deprecated) List bank transfers

`POST /bank_transfer/list`

> **Deprecated.**

Use the `/bank_transfer/list` endpoint to see a list of all your bank transfers and their statuses. Results are paginated; use the `count` and `offset` query parameters to retrieve the desired bank transfers.

## Request body

- BankTransferListRequest — Defines the request schema for `/bank_transfer/list`
  - `client_id` string — Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.
  - `secret` string — Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.
  - `start_date` string, date-time, nullable — The start datetime of bank transfers to list. This should be in RFC 3339 format (i.e. `2019-12-06T22:35:49Z`)
  - `end_date` string, date-time, nullable — The end datetime of bank transfers to list. This should be in RFC 3339 format (i.e. `2019-12-06T22:35:49Z`)
  - `count` integer — The maximum number of bank transfers to return.
  - `offset` integer — The number of bank transfers to skip before returning results.
  - `origination_account_id` string, nullable — Filter bank transfers to only those originated through the specified origination account.
  - `direction` 'outbound' | 'inbound' | 'null', nullable — Indicates the direction of the transfer: `outbound` for API-initiated transfers, or `inbound` for payments received by the FBO account.

## Response `200`

OK

- BankTransferListResponse — Defines the response schema for `/bank_transfer/list`
  - `bank_transfers` BankTransfer[], required
    - `id` string, required — Plaid's unique identifier for a bank transfer.
    - `ach_class` 'ccd' | 'ppd' | 'tel' | 'web', required — Specifies the use case of the transfer. Required for transfers on an ACH network. For more details, see [ACH SEC codes](https://plaid.com/docs/transfer/creating-transfers/#ach-sec-codes). Codes supported for credits: `ccd`, `ppd` Codes supported for debits: `ccd`, `ppd`, `tel`, `web` `"ccd"` - Corporate Credit or Debit - fund transfer between two corporate bank accounts `"ppd"` - Prearranged Payment or Deposit - The transfer is part of a pre-existing relationship with a consumer. Authorization was obtained in writing either in person or via an electronic document signing, e.g. Docusign, by the consumer. Can be used for credits or debits. `"web"` - Internet-Initiated Entry. The transfer debits a consumer's bank account. Authorization from the consumer is obtained over the Internet (e.g. a web or mobile application). Can be used for single debits or recurring debits. `"tel"` - Telephone-Initiated Entry. The transfer debits a consumer. Debit authorization has been received orally over the telephone via a recorded call.
    - `account_id` string, required — The account ID that should be credited/debited for this bank transfer.
    - `type` 'debit' | 'credit', required — The type of bank transfer. This will be either `debit` or `credit`. A `debit` indicates a transfer of money into the origination account; a `credit` indicates a transfer of money out of the origination account.
    - `user` BankTransferUser, required — The legal name and other information for the account holder.
      - `legal_name` string, required — The account holder's full legal name. If the transfer `ach_class` is `ccd`, this should be the business name of the account holder.
      - `email_address` string, nullable — The account holder's email.
      - `routing_number` string — The account holder's routing number. This field is only used in response data. Do not provide this field when making requests.
    - `amount` string, required — The amount of the bank transfer (decimal string with two digits of precision e.g. "10.00").
    - `iso_currency_code` string, required — The currency of the transfer amount, e.g. "USD"
    - `description` string, required — The description of the transfer.
    - `created` string, date-time, required — The datetime when this bank transfer was created. This will be of the form `2006-01-02T15:04:05Z`
    - `status` 'pending' | 'posted' | 'cancelled' | 'failed' | 'reversed', required — The status of the transfer.
    - `network` 'ach' | 'same-day-ach' | 'wire', required — The network or rails used for the transfer. Valid options are `ach`, `same-day-ach`, or `wire`.
    - `cancellable` boolean, required — When `true`, you can still cancel this bank transfer.
    - `failure_reason` BankTransferFailure, nullable, required — The failure reason if the type of this transfer is `"failed"` or `"reversed"`. Null value otherwise.
      - `ach_return_code` string, nullable — The ACH return code, e.g. `R01`. A return code will be provided if and only if the transfer status is `reversed`. For a full listing of ACH return codes, see [Bank Transfers errors](https://plaid.com/docs/errors/bank-transfers/#ach-return-codes).
      - `description` string — A human-readable description of the reason for the failure or reversal.
    - `custom_tag` string, nullable, required — A string containing the custom tag provided by the client in the create request. Will be null if not provided.
    - `metadata` BankTransferMetadata, nullable, required — The Metadata object is a mapping of client-provided string fields to any string value. The following limitations apply: The JSON values must be Strings (no nested JSON objects allowed) Only ASCII characters may be used Maximum of 50 key/value pairs Maximum key length of 40 characters Maximum value length of 500 characters
    - `origination_account_id` string, required — Plaid's unique identifier for the origination account that was used for this transfer.
    - `direction` 'outbound' | 'inbound' | 'null', nullable, required — Indicates the direction of the transfer: `outbound` for API-initiated transfers, or `inbound` for payments received by the FBO account.
  - `request_id` string, required — A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.

## Other responses

- `default` — Error response

---

[API](https://skmtc.net/plaid/apis/the-plaid-api.md) · [All operations](https://skmtc.net/plaid/apis/the-plaid-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/plaid/the-plaid-api/versions/64c4514ea59b/schema)
