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

# Bulk add vendor bank accounts

Bulk create vendor bank account objects. The maximum number of objects you can set in a bulk operation is 100.

**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/Bulk/Crud/Create/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": {
    "/Bulk/Crud/Create/VendorBankAccount.json": {
      "post": {
        "summary": "Bulk add vendor bank accounts",
        "operationId": "ap-vendormgmt-bulkcreatevendorbankaccount",
        "description": "Bulk create vendor bank account objects. The maximum number of objects you can set in a bulk operation is 100.\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/Bulk/Crud/Create/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/BulkCreateVendorBankAccountResponse"
                }
              }
            }
          }
        },
        "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/BulkCreateVendorBankAccountRequest"
                  }
                }
              }
            }
          }
        },
        "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`)"
          }
        }
      },
      "CreateVendorBankAccountRequest": {
        "type": "object",
        "required": [
          "obj"
        ],
        "properties": {
          "obj": {
            "type": "object",
            "required": [
              "entity",
              "vendorId",
              "accountNumber",
              "routingNumber"
            ],
            "properties": {
              "entity": {
                "type": "string",
                "description": "Object type. Set as `VendorBankAccount`.",
                "default": "VendorBankAccount"
              },
              "isActive": {
                "type": "string",
                "description": "Object visibility status. Inactive objects are hidden by default in the BILL web app.\n* `1`: Active\n* `2`: Inactive"
              },
              "vendorId": {
                "type": "string",
                "description": "BILL-generated ID of the vendor. The value begins with `009`."
              },
              "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"
              },
              "usersId": {
                "type": "string",
                "description": "BILL-generated ID of the user that added the vendor bank account. The value begins with `006`."
              },
              "isSavings": {
                "type": "boolean",
                "description": "Vendor bank account type. `isSavings` is required for an international bank account.\n* `true`: Savings account\n* `false`: Checking account"
              },
              "isPersonalAcct": {
                "type": "boolean",
                "description": "Vendor bank account owner type.\n* `true`: Personal account\n* `false`: Business account"
              },
              "intlPaymentType": {
                "type": "string",
                "description": "International ePayment type.\n* `0`: None\n* `1`: Wire\n* `2`: International ACH"
              },
              "paymentCurrency": {
                "type": "string",
                "description": "Vendor bank account payment currency. Three-letter abbreviation."
              },
              "vendorBankData": {
                "type": "string",
                "description": "Vendor bank data"
              },
              "bankAddSource": {
                "type": "string",
                "description": "Bank account addition source.\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."
              }
            }
          }
        }
      },
      "CreateVendorBankAccountResponse": {
        "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": "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`."
              },
              "isActive": {
                "type": "string",
                "description": "Object visibility status. Inactive objects are hidden by default in the BILL web app.\n* `1`: Active\n* `2`: Inactive"
              },
              "createdTime": {
                "type": "string",
                "description": "Created date and time"
              },
              "updatedTime": {
                "type": "string",
                "description": "Updated date and time"
              },
              "vendorId": {
                "type": "string",
                "description": "BILL-generated ID of the vendor. The value begins with `009`."
              },
              "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"
              },
              "usersId": {
                "type": "string",
                "description": "BILL-generated ID of the user that added the vendor bank account. The value begins with `006`."
              },
              "status": {
                "type": "string",
                "description": "Bank account verification status.\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.\n* `true`: Savings account\n* `false`: Checking account"
              },
              "isPersonalAcct": {
                "type": "boolean",
                "description": "Vendor bank account owner type.\n* `true`: Personal account\n* `false`: Business account"
              },
              "intlEPaymentAcct": {
                "type": "boolean",
                "description": "Set as `true` if the bank account is eligible for international ePayments"
              },
              "intlPaymentType": {
                "type": "string",
                "description": "International ePayment type.\n* `0`: None\n* `1`: Wire\n* `2`: International ACH"
              },
              "paymentCurrency": {
                "type": "string",
                "description": "Vendor bank account payment currency. Three-letter abbreviation."
              },
              "bankCountry": {
                "type": "string",
                "description": "Vendor bank country"
              },
              "vendorBankData": {
                "type": "string",
                "description": "Vendor bank data"
              },
              "bankAddSource": {
                "type": "string",
                "description": "Bank account addition source.\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."
              }
            }
          }
        }
      },
      "BulkCreateVendorBankAccountRequest": {
        "type": "object",
        "required": [
          "bulk"
        ],
        "properties": {
          "bulk": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CreateVendorBankAccountRequest"
            }
          }
        }
      },
      "BulkCreateVendorBankAccountResponse": {
        "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": "object",
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorResponse"
              }
            ],
            "properties": {
              "bulk": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/CreateVendorBankAccountResponse"
                }
              }
            }
          }
        }
      }
    }
  }
}
```