---
updatedAt: 2026-05-22T19:35:10.000Z
agentTools:
  projectIndex: https://developer.bill.com/v2/llms.txt
---

# List vendor bank accounts

List vendor bank account objects.

See [Search operations with lists](doc:search-ops-with-lists) to learn about pagination, sorting, and filtering.

**Note**: A vendor can have only one active bank account. You must delete a bank account (with `/v2/Crud/Delete/VendorBankAccount.json`) before adding a new bank account.

### Prerequisites
This is an MFA protected endpoint. Create an MFA-protected API session with `/v2/Login.json` before using `/v2/List/VendorBankAccount.json`.

### What is a vendor bank account?
A vendor bank account is required for enabling electronic payments for the vendor. BILL encrypts and securely stores bank account and routing number information. Only the last four digits are visible with the API and Web app.

When you add a vendor bank account, the account `status` is `1` (Verified). BILL sends a test deposit to the bank account within one or two business days. This is to confirm whether the bank account is able to receive payments.

If the vendor bank account status is `3` (Blocked), `4` (Expired), or `5` (Invalid), the vendor’s `payBy` method for BILL payments is reverted to `0` (Check).

# OpenAPI definition

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "AP | Vendor management",
    "version": "2.0",
    "description": "BILL is a cloud-based cash flow management system for an organization's Accounts Payable (AP) and Accounts Receivable (AR) automation.\n * **AP**: Automate workflows to pay vendors bills at scale for the goods and services they provide. Pay vendors with a wide range of payment methods. Generate vendor credits, bill credits, and payment disbursement reports.\n * **AR**: Automate workflows to get paid by customers at scale for the goods and services you provide. Generate and send invoices on a schedule, generate customer and invoice credits, and seamlessly charge authorized customers.\n * **Organization**: Manage your bank accounts (for sending and receiving payments), users (with user roles), and sync with your choice of accounting software.\n\nIntegrate with the BILL API to send and receive payments for your business. See [Support Center](https://help.bill.com/hc/en-us) for resources about using the BILL web app.",
    "contact": {
      "email": "developerprogram@hq.bill.com"
    }
  },
  "servers": [
    {
      "url": "https://api-stage.bill.com/api/v2",
      "description": "Sandbox base URL"
    }
  ],
  "x-readme": {
    "samples-languages": [
      "curl",
      "java",
      "javascript",
      "python",
      "ruby"
    ]
  },
  "paths": {
    "/List/VendorBankAccount.json": {
      "post": {
        "summary": "List vendor bank accounts",
        "operationId": "ap-vendormgmt-listvendorbankaccount",
        "description": "List vendor bank account objects.\n\nSee [Search operations with lists](https://developer.bill.com/docs/search-ops-with-lists) to learn about pagination, sorting, and filtering.\n\n**Note**: A vendor can have only one active bank account. You must delete a bank account (with `/v2/Crud/Delete/VendorBankAccount.json`) before adding a new bank account.\n\n### Prerequisites\nThis is an MFA protected endpoint. Create an MFA-protected API session with `/v2/Login.json` before using `/v2/List/VendorBankAccount.json`.\n\n### What is a vendor bank account?\nA vendor bank account is required for enabling electronic payments for the vendor. BILL encrypts and securely stores bank account and routing number information. Only the last four digits are visible with the API and Web app.\n\nWhen you add a vendor bank account, the account `status` is `1` (Verified). BILL sends a test deposit to the bank account within one or two business days. This is to confirm whether the bank account is able to receive payments.\n\nIf the vendor bank account status is `3` (Blocked), `4` (Expired), or `5` (Invalid), the vendor’s `payBy` method for BILL payments is reverted to `0` (Check).",
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ListVendorBankAccountResponse"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "devKey",
                  "sessionId",
                  "data"
                ],
                "properties": {
                  "devKey": {
                    "type": "string",
                    "description": "Developer key generated with your BILL developer account"
                  },
                  "sessionId": {
                    "type": "string",
                    "description": "API session ID generated with [`/v2/Login.json`](https://developer.bill.com/reference/auth-login)"
                  },
                  "data": {
                    "$ref": "#/components/schemas/ListVendorBankAccountRequest"
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Vendor bank account"
        ]
      },
      "parameters": []
    }
  },
  "components": {
    "schemas": {
      "ErrorResponse": {
        "type": "object",
        "properties": {
          "error_code": {
            "type": "string",
            "description": "Error code (only when `response_status` is `1`)"
          },
          "error_message": {
            "type": "string",
            "description": "Error message (only when `response_status` is `1`)"
          }
        }
      },
      "ListVendorBankAccountRequest": {
        "type": "object",
        "required": [
          "start",
          "max"
        ],
        "properties": {
          "start": {
            "type": "integer",
            "default": 0,
            "description": "Index of the first result"
          },
          "max": {
            "type": "integer",
            "default": 999,
            "description": "Maximum number of results"
          },
          "filters": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field": {
                  "type": "string",
                  "description": "Field name. See the response body documentation to learn about fields that you can filter with. Filterable fields are marked with `You can filter with this field.`"
                },
                "op": {
                  "type": "string",
                  "description": "Operator symbol.\n* `=`: Equals\n* `<`: Less than\n* `>`: Greater than\n* `!=`: Not equal\n* `<=`: Less than or equal to\n* `>=`: Greater than or equal to\n* `in`: Value in list\n* `nin`: Value not in list"
                },
                "value": {
                  "type": "string",
                  "description": "Field value"
                }
              }
            }
          },
          "sort": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "field": {
                  "type": "string",
                  "description": "Field name"
                },
                "asc": {
                  "type": "string",
                  "description": "Sort order.\n* `true`: Ascending order\n* `false`: Descending order"
                }
              }
            }
          },
          "nested": {
            "type": "boolean",
            "description": "Set as `true` to include additional nested data in the response"
          }
        }
      },
      "ListVendorBankAccountResponse": {
        "type": "object",
        "properties": {
          "response_status": {
            "type": "integer",
            "description": "Response status.\n* `0`: Success response\n* `1`: Error response. Only `error_code` and `error_message` is returned in `response_data`."
          },
          "response_message": {
            "type": "string",
            "description": "Response status.\n* `Success`: Success response\n* `Error`: Error response. Only `error_code` and `error_message` is returned in `response_data`."
          },
          "response_data": {
            "type": "array",
            "items": {
              "type": "object",
              "allOf": [
                {
                  "$ref": "#/components/schemas/ErrorResponse"
                }
              ],
              "properties": {
                "entity": {
                  "type": "string",
                  "description": "Object type. Set as `VendorBankAccount`."
                },
                "id": {
                  "type": "string",
                  "description": "BILL-generated vendor bank account ID. The value begins with `vba`. You can filter with this field."
                },
                "isActive": {
                  "type": "string",
                  "description": "Object visibility status. Inactive objects are hidden by default in the BILL web app. You can filter with this field.\n* `1`: Active\n* `2`: Inactive"
                },
                "createdTime": {
                  "type": "string",
                  "description": "Created date and time. You can filter with this field."
                },
                "updatedTime": {
                  "type": "string",
                  "description": "Updated date and time. You can filter with this field."
                },
                "vendorId": {
                  "type": "string",
                  "description": "BILL-generated ID of the vendor. The value begins with `009`. You can filter with this field."
                },
                "nameOnAcct": {
                  "type": "string",
                  "description": "Unique vendor name. This value is set for check and electronic payments if `nameOnCheck` is not set."
                },
                "accountNumber": {
                  "type": "string",
                  "description": "Vendor bank account number"
                },
                "routingNumber": {
                  "type": "string",
                  "description": "Vendor bank routing number. For an international bank account, the routing number may have different names, such as IBAN, IFSC, or transit number.\n\nSee [Country information for international payments](https://help.bill.com/hc/en-us/articles/360007172671) in the BILL Help Center to learn about supported countries and currencies."
                },
                "usersId": {
                  "type": "string",
                  "description": "BILL-generated ID of the user that added the vendor bank account. The value begins with `006`. You can filter with this field."
                },
                "status": {
                  "type": "string",
                  "description": "Bank account verification status. You can filter with this field.\n* `0`: Not verified\n* `1`: Verified\n* `2`: Pending\n* `3`: Blocked\n* `4`: Expired\n* `5`: Invalid"
                },
                "isSavings": {
                  "type": "boolean",
                  "description": "Vendor bank account type. You can filter with this field.\n* `true`: Savings account\n* `false`: Checking account"
                },
                "isPersonalAcct": {
                  "type": "boolean",
                  "description": "Vendor bank account owner type. You can filter with this field.\n* `true`: Personal account\n* `false`: Business account"
                },
                "intlEPaymentAcct": {
                  "type": "boolean",
                  "description": "Set as `true` if the bank account is eligible for international ePayments. You can filter with this field."
                },
                "intlPaymentType": {
                  "type": "string",
                  "description": "International ePayment type. You can filter with this field.\n* `0`: None\n* `1`: Wire\n* `2`: International ACH"
                },
                "paymentCurrency": {
                  "type": "string",
                  "description": "Vendor bank account payment currency. Three-letter abbreviation. You can filter with this field."
                },
                "bankCountry": {
                  "type": "string",
                  "description": "Vendor bank country. You can filter with this field.\n\nSee [Country information for international payments](https://help.bill.com/hc/en-us/articles/360007172671) in the BILL Help Center to learn about supported countries and currencies."
                },
                "vendorBankData": {
                  "type": "string",
                  "description": "Vendor bank data"
                },
                "bankAddSource": {
                  "type": "string",
                  "description": "Bank account addition source. You can filter with this field.\n* `1`: Not available\n* `2`: User manual\n* `3`: User IVA\n* `4`: Vendor portal\n* `5`: User clone\n* `6`: International processor migration"
                },
                "intlTemplateKey": {
                  "type": "string",
                  "description": "International template key"
                },
                "regulatory1": {
                  "type": "string",
                  "description": "Regulatory data field 1. This field is available only for select BILL partners."
                },
                "regulatory2": {
                  "type": "string",
                  "description": "Regulatory data field 2. This field is available only for select BILL partners."
                },
                "regulatory3": {
                  "type": "string",
                  "description": "Regulatory data field 3. This field is available only for select BILL partners."
                },
                "regulatory4": {
                  "type": "string",
                  "description": "Regulatory data field 4. This field is available only for select BILL partners."
                },
                "regulatory5": {
                  "type": "string",
                  "description": "Regulatory data field 5. This field is available only for select BILL partners."
                },
                "regulatory6": {
                  "type": "string",
                  "description": "Regulatory data field 6. This field is available only for select BILL partners."
                },
                "regulatory7": {
                  "type": "string",
                  "description": "Regulatory data field 7. This field is available only for select BILL partners."
                }
              }
            }
          }
        }
      }
    }
  }
}
```