---
updatedAt: 2026-06-29T20:33:19.000Z
agentTools:
  projectIndex: https://developer.bill.com/llms.txt
---

# Update a vendor

Update details about an existing vendor.

### Requirements for enabling vendor payments

Vendor address details are required for paying a vendor by check or for inviting the vendor to join the BILL network.
* `line1`
* `city`
* `zipOrPostalCode`
* `country`
* `payeeName`

**Note**: You cannot add or update vendor bank account information with this endpoint. You can add and manage vendor bank account information with a dedicated set of endpoints.
* **Create a vendor bank account**: `POST /v3/vendors/{vendorId}/bank-account`
* **Get vendor bank account details**: `GET /v3/vendors/{vendorId}/bank-account`
* **Delete a vendor bank account**: `DELETE /v3/vendors/{vendorId}/bank-account`

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "title": "BILL v3 API",
    "description": "BILL is a cloud-based financial operations platform for an organization's accounts payable (AP), accounts receivable (AR), and spend & expense (S&E) automation.\n\nThe BILL v3 API gives you access to the same infrastructure that powers the AP, AR, and S&E products. In addition, you can receive real-time event notifications with webhooks.\n\nThe BILL Developer Documentation is available at [developer.bill.com](https://developer.bill.com/docs/home).\n\n## Quickstart\nSign-up and generate a developer key for working with the BILL v3 API. With this key, you can build with the AP, AR, BILL network, and webhook workflows. See [Sandbox API sign up](https://developer.bill.com/docs/api-sandbox-sign-up) for more information.\n\n### Spend & Expense API\nAn API token is required for working with the Spend & Expense API. See [Authentication with Spend & Expense API token](https://developer.bill.com/docs/authentication-with-api-token) for more information.\n\n### BILL v3 API in Postman\nWith this collection, you have access to the BILL v3 API in Postman. When you save your sandbox API credentials as environment variables in Postman, you can simply refer to the variables when you are testing with the BILL v3 API. See [BILL v3 API in Postman](https://developer.bill.com/docs/bill-v3-api-in-postman) for more information.",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://gateway.stage.bill.com/connect",
      "description": "sandbox"
    }
  ],
  "paths": {
    "/v3/vendors/{vendorId}": {
      "patch": {
        "tags": [
          "vendors"
        ],
        "summary": "Update a vendor",
        "description": "Update details about an existing vendor.\n\n### Requirements for enabling vendor payments\n\nVendor address details are required for paying a vendor by check or for inviting the vendor to join the BILL network.\n* `line1`\n* `city`\n* `zipOrPostalCode`\n* `country`\n* `payeeName`\n\n**Note**: You cannot add or update vendor bank account information with this endpoint. You can add and manage vendor bank account information with a dedicated set of endpoints.\n* **Create a vendor bank account**: `POST /v3/vendors/{vendorId}/bank-account`\n* **Get vendor bank account details**: `GET /v3/vendors/{vendorId}/bank-account`\n* **Delete a vendor bank account**: `DELETE /v3/vendors/{vendorId}/bank-account`",
        "operationId": "updateVendor",
        "parameters": [
          {
            "name": "sessionId",
            "in": "header",
            "schema": {
              "type": "string",
              "description": "API session ID generated with `/v3/login`",
              "nullable": true,
              "example": "{{session_id}}"
            }
          },
          {
            "name": "devKey",
            "in": "header",
            "schema": {
              "type": "string",
              "description": "Developer key generated with your BILL developer account",
              "nullable": true,
              "example": "{{developer_key}}"
            }
          },
          {
            "name": "vendorId",
            "in": "path",
            "required": true,
            "schema": {
              "minLength": 1,
              "type": "string",
              "description": "BILL-generated ID of the vendor. The value begins with `009`.",
              "example": "{{vendor_id}}"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VendorUpdateRequestDto"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Update a vendor response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VendorResponseDto"
                }
              }
            }
          },
          "4XX": {
            "description": "List of errors.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BdcError"
                  }
                }
              }
            }
          },
          "5XX": {
            "description": "List of errors.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/BdcError"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "AccountTypeRequest": {
        "type": "string",
        "description": "AccountRequestType.",
        "enum": [
          "NONE",
          "BUSINESS",
          "PERSON"
        ]
      },
      "AccountTypeResponse": {
        "type": "string",
        "description": "AccountType.",
        "enum": [
          "NONE",
          "BUSINESS",
          "PERSON",
          "UNDEFINED"
        ]
      },
      "AdditionalInfoRequest": {
        "type": "object",
        "properties": {
          "taxId": {
            "type": "string",
            "description": "Vendor tax ID. This value is required by the IRS for tax purposes."
          },
          "taxIdType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TaxIdTypeRequest"
              },
              {
                "description": "Vendor tax ID type"
              }
            ]
          },
          "track1099": {
            "type": "boolean",
            "description": "Set as `true` if the vendor is eligible to receive an IRS form 1099 from the payer"
          },
          "leadTimeInDays": {
            "type": "integer",
            "description": "Vendor payment lead time in days",
            "format": "int32"
          },
          "combinePayments": {
            "type": "boolean",
            "description": "Set as `true` to combine a bulk payment made to the vendor with `POST /v3/payments/bulk`. The default value is `true`."
          },
          "paymentTermId": {
            "type": "string",
            "description": "BILL-generated ID of the payment term. Use payment terms to set the number of days that customers have to pay a vendor bill."
          },
          "companyName": {
            "type": "string",
            "description": "Vendor business name. This value is required by the IRS for tax purposes."
          }
        },
        "description": "The type Additional info."
      },
      "AdditionalInfoResponse": {
        "type": "object",
        "properties": {
          "taxId": {
            "type": "string",
            "description": "Vendor tax ID. This value is required by the IRS for tax purposes."
          },
          "taxIdType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TaxIdTypeResponse"
              },
              {
                "description": "Vendor tax ID type"
              }
            ]
          },
          "track1099": {
            "type": "boolean",
            "description": "Set as `true` if the vendor is eligible to receive an IRS form 1099 from the payer"
          },
          "leadTimeInDays": {
            "type": "integer",
            "description": "Vendor payment lead time in days",
            "format": "int32"
          },
          "combinePayments": {
            "type": "boolean",
            "description": "Set as `true` to combine a bulk payment made to the vendor with `POST /v3/payments/bulk`. The default value is `true`."
          },
          "paymentTermId": {
            "type": "string",
            "description": "BILL-generated ID of the payment term. Use payment terms to set the number of days that customers have to pay a vendor bill."
          },
          "companyName": {
            "type": "string",
            "description": "Vendor business name. This value is required by the IRS for tax purposes."
          }
        },
        "description": "The type Additional info."
      },
      "AddressDto": {
        "type": "object",
        "properties": {
          "line1": {
            "type": "string",
            "description": "Address line 1"
          },
          "line2": {
            "type": "string",
            "description": "Address line 2"
          },
          "city": {
            "type": "string",
            "description": "City"
          },
          "stateOrProvince": {
            "type": "string",
            "description": "State or province"
          },
          "zipOrPostalCode": {
            "type": "string",
            "description": "Zip or postal code"
          },
          "country": {
            "type": "string",
            "description": "Country"
          }
        },
        "description": "Address information."
      },
      "AddressResponse": {
        "required": [
          "city",
          "country",
          "line1",
          "zipOrPostalCode"
        ],
        "type": "object",
        "properties": {
          "line1": {
            "minLength": 1,
            "pattern": "^.{0,1000}$",
            "type": "string",
            "description": "Address line 1"
          },
          "line2": {
            "pattern": "^.{0,100}$",
            "type": "string",
            "description": "Address line 2"
          },
          "city": {
            "minLength": 1,
            "pattern": "^.{0,100}$",
            "type": "string",
            "description": "Address city"
          },
          "stateOrProvince": {
            "pattern": "^.{0,100}$",
            "type": "string",
            "description": "State or province"
          },
          "zipOrPostalCode": {
            "minLength": 1,
            "pattern": "^.{0,30}$",
            "type": "string",
            "description": "Zip or postal code"
          },
          "country": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CountryCode"
              },
              {
                "description": "Country code (ISO2)"
              }
            ]
          },
          "countryName": {
            "type": "string",
            "description": "Country name."
          }
        },
        "description": "Address response."
      },
      "AddressUpdate": {
        "type": "object",
        "properties": {
          "line1": {
            "pattern": "^.{0,1000}$",
            "type": "string",
            "description": "Address line 1"
          },
          "line2": {
            "pattern": "^.{0,100}$",
            "type": "string",
            "description": "Address line 2"
          },
          "city": {
            "pattern": "^.{0,100}$",
            "type": "string",
            "description": "Address city"
          },
          "stateOrProvince": {
            "pattern": "^.{0,100}$",
            "type": "string",
            "description": "State or province"
          },
          "zipOrPostalCode": {
            "pattern": "^.{0,30}$",
            "type": "string",
            "description": "Zip or postal code"
          },
          "country": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CountryCode"
              },
              {
                "description": "Country code (ISO2)"
              }
            ]
          }
        },
        "description": "The type Address Update dto."
      },
      "AutoPayDto": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Set as `true` if the vendor auto-pay is enabled"
          },
          "bankAccountId": {
            "type": "string",
            "description": "BILL-generated ID of the organization bank account used to set up vendor auto-pay. The value begins with `bac`."
          },
          "createdBy": {
            "type": "string",
            "description": "BILL-generated ID of the user that set up vendor auto-pay. The value begins with `006`.\n\nYou can retrieve your user ID when you sign in with `/v3/login`."
          },
          "maxAmount": {
            "type": "number",
            "description": "Maximum bill amount for which vendor auto-pay is enabled"
          },
          "daysBeforeDueDate": {
            "maximum": 60,
            "minimum": 0,
            "type": "integer",
            "description": "Number of days before the bill payment due date.\n\nFor example, if `dueBeforeDueDate` is `3`, BILL submits the vendor payment 3 days before the bill payment due date.",
            "format": "int32"
          }
        },
        "description": "The type Auto Pay dto. (CONTROLLER)"
      },
      "Balance": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "description": "Balance amount to be paid to the vendor"
          },
          "lastUpdatedDate": {
            "type": "string",
            "description": "Balance amount last updated date and time",
            "format": "date-time"
          }
        },
        "description": "The type Balance dto."
      },
      "BankAccountOwnerType": {
        "type": "string",
        "description": "BankAccountOwnerType Enum.",
        "enum": [
          "BUSINESS",
          "PERSONAL"
        ]
      },
      "BankAccountStatus": {
        "type": "string",
        "description": "Bank account status.",
        "enum": [
          "NOT_VERIFIED",
          "VERIFIED",
          "PENDING",
          "BLOCKED",
          "EXPIRED",
          "INVALID",
          "UNDEFINED"
        ]
      },
      "BankAccountType": {
        "type": "string",
        "description": "BankAccountType Enum.",
        "enum": [
          "CHECKING",
          "SAVINGS"
        ]
      },
      "BankInfo": {
        "type": "object",
        "properties": {
          "swiftBIC": {
            "type": "string",
            "description": "SWIFT code"
          },
          "branchName": {
            "type": "string",
            "description": "Branch name"
          },
          "countryISO": {
            "type": "string",
            "description": "Country ISO code"
          },
          "nationalBankCode": {
            "type": "string",
            "description": "National bank code"
          },
          "institutionName": {
            "type": "string",
            "description": "Bank institution name"
          },
          "primaryKey": {
            "type": "string",
            "description": "Primary key"
          },
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressDto"
              },
              {
                "description": "Bank address"
              }
            ]
          }
        },
        "description": "Bank branch info for a Bank account."
      },
      "BdcError": {
        "required": [
          "category",
          "code",
          "severity",
          "timestamp"
        ],
        "type": "object",
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "code": {
            "type": "string"
          },
          "severity": {
            "$ref": "#/components/schemas/Severity"
          },
          "category": {
            "$ref": "#/components/schemas/Category"
          },
          "message": {
            "type": "string"
          },
          "params": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Param"
            }
          },
          "detail": {
            "type": "string"
          },
          "help": {
            "type": "string"
          }
        }
      },
      "Category": {
        "type": "string",
        "enum": [
          "REQUEST",
          "APPLICATION",
          "SERVER",
          "DOWNSTREAM"
        ]
      },
      "CountryCode": {
        "type": "string",
        "description": "Enumeration based on the ISO2 country code specification.",
        "enum": [
          "AD",
          "AE",
          "AF",
          "AG",
          "AI",
          "AL",
          "AM",
          "AO",
          "AQ",
          "AR",
          "AS",
          "AT",
          "AU",
          "AW",
          "AZ",
          "BA",
          "BB",
          "BD",
          "BE",
          "BF",
          "BG",
          "BH",
          "BI",
          "BJ",
          "BM",
          "BN",
          "BO",
          "BR",
          "BS",
          "BT",
          "BW",
          "BY",
          "BZ",
          "CA",
          "CC",
          "CD",
          "CF",
          "CG",
          "CH",
          "CI",
          "CK",
          "CL",
          "CM",
          "CN",
          "CO",
          "CR",
          "CV",
          "CX",
          "CY",
          "CZ",
          "DE",
          "DJ",
          "DK",
          "DM",
          "DO",
          "DZ",
          "EC",
          "EE",
          "EG",
          "EH",
          "ER",
          "ES",
          "ET",
          "FI",
          "FJ",
          "FK",
          "FM",
          "FO",
          "FR",
          "GA",
          "GB",
          "GD",
          "GE",
          "GF",
          "GH",
          "GI",
          "GL",
          "GM",
          "GN",
          "GP",
          "GQ",
          "GR",
          "GS",
          "GT",
          "GW",
          "GY",
          "HK",
          "HM",
          "HN",
          "HR",
          "HT",
          "HU",
          "ID",
          "IE",
          "IL",
          "IN",
          "IO",
          "IQ",
          "IS",
          "IT",
          "JM",
          "JO",
          "JP",
          "KE",
          "KG",
          "KH",
          "KI",
          "KM",
          "KN",
          "KR",
          "KW",
          "KY",
          "KZ",
          "LA",
          "LB",
          "LC",
          "LI",
          "LK",
          "LR",
          "LS",
          "LT",
          "LU",
          "LV",
          "LY",
          "MA",
          "MC",
          "MD",
          "ME",
          "MG",
          "MH",
          "MK",
          "ML",
          "MN",
          "MO",
          "MP",
          "MQ",
          "MR",
          "MS",
          "MT",
          "MU",
          "MV",
          "MW",
          "MX",
          "MY",
          "MZ",
          "NA",
          "NC",
          "NE",
          "NF",
          "NG",
          "NI",
          "NL",
          "NO",
          "NP",
          "NR",
          "NU",
          "NZ",
          "OM",
          "PA",
          "PE",
          "PF",
          "PG",
          "PH",
          "PK",
          "PL",
          "PM",
          "PN",
          "PS",
          "PT",
          "PW",
          "PY",
          "QA",
          "RE",
          "RO",
          "RS",
          "RU",
          "RW",
          "SA",
          "SB",
          "SC",
          "SE",
          "SG",
          "SH",
          "SI",
          "SJ",
          "SK",
          "SL",
          "SM",
          "SN",
          "SO",
          "SR",
          "ST",
          "SV",
          "SZ",
          "TC",
          "TD",
          "TF",
          "TG",
          "TH",
          "TJ",
          "TK",
          "TL",
          "TM",
          "TN",
          "TO",
          "TR",
          "TT",
          "TV",
          "TW",
          "TZ",
          "UA",
          "UG",
          "UM",
          "US",
          "UY",
          "UZ",
          "VA",
          "VC",
          "VE",
          "VG",
          "VN",
          "VU",
          "WF",
          "WS",
          "YE",
          "YT",
          "ZA",
          "ZM",
          "ZW"
        ]
      },
      "CurrencyCode": {
        "type": "string",
        "description": "Enumeration based on the ISO2 country code specification.",
        "enum": [
          "AED",
          "AFN",
          "ALL",
          "AMD",
          "ANG",
          "AOA",
          "ARS",
          "AUD",
          "AWG",
          "AZN",
          "BAM",
          "BBD",
          "BDT",
          "BGN",
          "BHD",
          "BIF",
          "BMD",
          "BND",
          "BOB",
          "BRL",
          "BSD",
          "BTN",
          "BWP",
          "BYN",
          "BZD",
          "CAD",
          "CDF",
          "CHF",
          "CLP",
          "CNY",
          "COP",
          "CRC",
          "CUC",
          "CUP",
          "CVE",
          "CZK",
          "DJF",
          "DKK",
          "DOP",
          "DZD",
          "EGP",
          "ERN",
          "ETB",
          "EUR",
          "FJD",
          "FKP",
          "GBP",
          "GEL",
          "GGP",
          "GHS",
          "GIP",
          "GMD",
          "GNF",
          "GTQ",
          "GYD",
          "HKD",
          "HNL",
          "HRK",
          "HTG",
          "HUF",
          "IDR",
          "ILS",
          "IMP",
          "INR",
          "IQD",
          "IRR",
          "ISK",
          "JEP",
          "JMD",
          "JOD",
          "JPY",
          "KES",
          "KGS",
          "KHR",
          "KMF",
          "KPW",
          "KRW",
          "KWD",
          "KYD",
          "KZT",
          "LAK",
          "LBP",
          "LKR",
          "LRD",
          "LSL",
          "LYD",
          "MAD",
          "MDL",
          "MGA",
          "MKD",
          "MMK",
          "MNT",
          "MOP",
          "MRU",
          "MUR",
          "MVR",
          "MWK",
          "MXN",
          "MYR",
          "MZN",
          "NAD",
          "NGN",
          "NIO",
          "NOK",
          "NPR",
          "NZD",
          "OMR",
          "PAB",
          "PEN",
          "PGK",
          "PHP",
          "PKR",
          "PLN",
          "PYG",
          "QAR",
          "RON",
          "RSD",
          "RUB",
          "RWF",
          "SAR",
          "SBD",
          "SCR",
          "SDG",
          "SEK",
          "SGD",
          "SHP",
          "SLE",
          "SLL",
          "SOS",
          "SPL",
          "SRD",
          "STN",
          "SVC",
          "SYP",
          "SZL",
          "THB",
          "TJS",
          "TMT",
          "TND",
          "TOP",
          "TRY",
          "TTD",
          "TVD",
          "TWD",
          "TZS",
          "UAH",
          "UGX",
          "USD",
          "UYU",
          "UZS",
          "VEF",
          "VND",
          "VUV",
          "WST",
          "XAF",
          "XCD",
          "XDR",
          "XOF",
          "XPF",
          "YER",
          "ZAR",
          "ZMW",
          "ZWD"
        ]
      },
      "DisbursementSubType": {
        "type": "string",
        "description": "PayBy.",
        "enum": [
          "NONE",
          "WIRE",
          "IACH",
          "LOCAL",
          "MULTIPLE",
          "ACH",
          "UNDEFINED"
        ]
      },
      "DisbursementType": {
        "type": "string",
        "description": "Enum for Disbursement type.",
        "enum": [
          "CHECK",
          "ACH",
          "RPPS",
          "PAYPAL",
          "OFFLINE",
          "INTERNATIONAL_E_PAYMENT",
          "AMEX",
          "VIRTUAL_CARD",
          "WALLET",
          "CREDIT_CARD",
          "UNDEFINED"
        ]
      },
      "NameValue": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name field"
          },
          "value": {
            "type": "string",
            "description": "Value field"
          }
        },
        "description": "Class for name value pair."
      },
      "NetworkInvitationStatus": {
        "type": "string",
        "description": "Status of the invitation from customer/vendor to an organization.",
        "enum": [
          "NOT_CONNECTED",
          "PENDING",
          "CONNECTED",
          "CONNECTED_RPPS"
        ]
      },
      "Param": {
        "required": [
          "name",
          "value"
        ],
        "type": "object",
        "properties": {
          "additional": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "minLength": 1,
            "type": "string"
          },
          "value": {
            "minLength": 1,
            "type": "string"
          }
        }
      },
      "PayByType": {
        "type": "string",
        "description": "Enum for PayByType.",
        "enum": [
          "CHECK",
          "ACH",
          "RPPS",
          "OFFLINE",
          "INTERNATIONAL_E_PAYMENT",
          "VIRTUAL_CARD",
          "WALLET",
          "UNDEFINED"
        ]
      },
      "PaymentInformationCommon": {
        "required": [
          "payeeName"
        ],
        "type": "object",
        "properties": {
          "payeeName": {
            "pattern": "^.{3,100}$",
            "type": "string",
            "description": "Vendor name for check and electronic payments. This field is overridden when you connect with a vendor in the BILL network."
          },
          "email": {
            "type": "string",
            "description": "Vendor email address for receiving payment information. BILL uses the vendor `email` value when this payment `email` value is not set."
          }
        },
        "description": "Common payment information POJO."
      },
      "PaymentInformationRequestUpdate": {
        "type": "object",
        "properties": {
          "payeeName": {
            "type": "string",
            "description": "Vendor name for check and electronic payments"
          },
          "email": {
            "type": "string",
            "description": "Vendor email address for receiving payment information. BILL uses the vendor `email` value when this payment `email` value is not set."
          },
          "paymentPurpose": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentPurposeRequest"
              },
              {
                "description": "Payment purpose information for compliance with international payment rules of the vendor country. This one-time configuration is required for enabling electronic payments to international vendors.\n\nYou can set `paymentPurpose` at the time of creating a vendor, updating vendor details, or creating a payment.\n\n**Note**: Set `paymentPurpose` only when it is required. Vendor countries, like Japan, do not require any payment purpose information. For such countries, setting `paymentPurpose` in your request results in an error response.\n\nSee [Create an international vendor](https://developer.bill.com/docs/creating-an-international-vendor) for more information on how to set `paymentPurpose`."
              }
            ]
          }
        },
        "description": "Common payment information POJO."
      },
      "PaymentInformationResponse": {
        "type": "object",
        "description": "The type PaymentInformationResponse.",
        "allOf": [
          {
            "$ref": "#/components/schemas/PaymentInformationCommon"
          },
          {
            "properties": {
              "lastPaymentDate": {
                "type": "string",
                "description": "Last payment date"
              },
              "payByType": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PayByType"
                  },
                  {
                    "description": "Payment method for BILL payments"
                  }
                ]
              },
              "payBySubType": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/DisbursementSubType"
                  },
                  {
                    "description": "Payment delivery method for international payments."
                  }
                ]
              },
              "transferMethod": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/TransferMethod"
                  },
                  {
                    "description": "Default payment delivery method for international payments. This field is set when `payBySubType` is set as `MULTIPLE`.\n* `LOCAL`: Funds transferred with the vendor country's domestic payment network\n* `WIRE`: Funds transferred with bank-operated networks (For example, SWIFT)"
                  }
                ]
              },
              "virtualCard": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/VirtualCard"
                  },
                  {
                    "description": "Virtual card information.\n\n  **Note**: A vendor can be enrolled to accept virtual card payments   even without being connected in the BILL network. See   [Virtual card FAQ](https://help.bill.com/direct/s/article/360021237411) in the BILL Help   Center for more information."
                  }
                ]
              },
              "bankAccount": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/VendorBankAccountResponseDto"
                  },
                  {
                    "description": "Vendor bank account information. This information is overridden when you connect with a vendor in the BILL network."
                  }
                ]
              },
              "paymentPurpose": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/PaymentPurposeResponse"
                  },
                  {
                    "description": "Payment purpose information"
                  }
                ]
              }
            }
          }
        ]
      },
      "PaymentPurposeCodeRequest": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name"
          }
        },
        "description": "Payment purpose code request."
      },
      "PaymentPurposeCodeResponse": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name"
          },
          "value": {
            "type": "string",
            "description": "Value"
          }
        },
        "description": "Payment purpose code response."
      },
      "PaymentPurposeRequest": {
        "type": "object",
        "properties": {
          "text": {
            "maxLength": 250,
            "type": "string",
            "description": "Payment purpose text. This can be any user-defined text. If you set `text`, do not set `code`."
          },
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentPurposeCodeRequest"
              },
              {
                "description": "Payment purpose code. If you set the `code` object, do not set `text`."
              }
            ]
          }
        },
        "description": "Payment purpose request."
      },
      "PaymentPurposeResponse": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "Payment purpose text"
          },
          "code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentPurposeCodeResponse"
              },
              {
                "description": "Payment purpose code"
              }
            ]
          }
        },
        "description": "Payment purpose response."
      },
      "Severity": {
        "type": "string",
        "enum": [
          "ERROR",
          "WARNING",
          "INFORMATION"
        ]
      },
      "TaxIdTypeRequest": {
        "type": "string",
        "description": "The enum Tax id type enum.",
        "enum": [
          "EIN",
          "SSN"
        ]
      },
      "TaxIdTypeResponse": {
        "type": "string",
        "description": "The enum Tax id type enum.",
        "enum": [
          "EIN",
          "SSN",
          "UNDEFINED"
        ]
      },
      "TransferMethod": {
        "type": "string",
        "description": "International Payment Transfer Method.",
        "enum": [
          "WIRE",
          "LOCAL",
          "UNDEFINED"
        ]
      },
      "VendorBankAccountRequestDto": {
        "required": [
          "accountNumber"
        ],
        "type": "object",
        "properties": {
          "nameOnAccount": {
            "type": "string",
            "description": "Vendor bank account name"
          },
          "accountNumber": {
            "minLength": 1,
            "type": "string",
            "description": "Vendor bank account number. This field is required for enabling electronic payments to vendors.\n\nSee [Create an international vendor](https://developer.bill.com/docs/creating-an-international-vendor) for more information on how to set up vendor payment information for an international (not US) vendor."
          },
          "routingNumber": {
            "type": "string",
            "description": "Vendor bank routing number. This field is required for enabling electronic payments to vendors. This field is empty for an IBAN `accountNumber`.\n\nSee [Create an international vendor](https://developer.bill.com/docs/creating-an-international-vendor) for more information on how to set up vendor payment information for an international (not US) vendor."
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountType"
              },
              {
                "description": "Vendor bank account type. This value is required for enabling electronic payments to international vendors (not United States) in specific countries."
              }
            ]
          },
          "ownerType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BankAccountOwnerType"
              },
              {
                "description": "Vendor bank account owner type"
              }
            ]
          },
          "regulatoryFields": {
            "type": "array",
            "description": "International bank account regulatory information. The `name` and `value` fields are required for each required bank account regulatory field.\n\nSee [Create an international vendor](https://developer.bill.com/docs/creating-an-international-vendor) for more information on how to set `regulatoryFields`.",
            "items": {
              "$ref": "#/components/schemas/NameValue"
            }
          },
          "paymentCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CurrencyCode"
              },
              {
                "description": "Payment currency. Three-letter abbreviation. This field is required for enabling electronic payments to vendors.\n\nSee <a href=\"https://help.bill.com/hc/en-us/articles/360007172671\">Country information for international payments</a> in the BILL Help Center for more information."
              }
            ]
          }
        },
        "description": "Vendor bank account details",
        "example": {
          "nameOnAccount": "Bill Vendorson",
          "accountNumber": "111222333",
          "routingNumber": "074000010",
          "type": "CHECKING",
          "ownerType": "BUSINESS",
          "paymentCurrency": "USD"
        }
      },
      "VendorBankAccountResponseDto": {
        "type": "object",
        "description": "Bank account details for a Vendor.",
        "allOf": [
          {
            "$ref": "#/components/schemas/VendorBankAccountRequestDto"
          },
          {
            "properties": {
              "bankInfo": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BankInfo"
                  },
                  {
                    "description": "Vendor bank account branch information"
                  }
                ]
              },
              "status": {
                "allOf": [
                  {
                    "$ref": "#/components/schemas/BankAccountStatus"
                  },
                  {
                    "description": "Vendor bank account status."
                  }
                ]
              }
            }
          }
        ]
      },
      "VendorBankAccountStatusResponse": {
        "type": "string",
        "description": "BankAccountStatus.",
        "enum": [
          "NO_ACCOUNT",
          "NO_NET_LINKED_ACCOUNT",
          "NET_LINKED_ACCOUNT",
          "UNDEFINED"
        ]
      },
      "VendorResponseDto": {
        "required": [
          "archived"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "BILL-generated ID of the vendor. The value begins with `009`."
          },
          "archived": {
            "type": "boolean",
            "description": "Set as `true` if the vendor is archived"
          },
          "name": {
            "type": "string",
            "description": "Vendor name"
          },
          "shortName": {
            "type": "string",
            "description": "Vendor short name"
          },
          "accountNumber": {
            "type": "string",
            "description": "User account number set by the vendor.\n\nWhen you pay the vendor, this value appears on the check memo or electronic payment record."
          },
          "accountType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTypeResponse"
              },
              {
                "description": "Vendor account type"
              }
            ]
          },
          "email": {
            "type": "string",
            "description": "Vendor email address"
          },
          "phone": {
            "type": "string",
            "description": "Vendor phone number. This field is overridden when you connect with a vendor in the BILL network."
          },
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressResponse"
              },
              {
                "description": "Vendor address information. This information is overridden when you connect with a vendor in the BILL network."
              }
            ]
          },
          "paymentInformation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentInformationResponse"
              },
              {
                "description": "Vendor payment information"
              }
            ]
          },
          "additionalInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdditionalInfoResponse"
              },
              {
                "description": "Vendor additional information"
              }
            ]
          },
          "rppsId": {
            "type": "string",
            "description": "BILL-generated ID of the verified national vendor (if the vendor is a verified national vendor)"
          },
          "bankAccountStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VendorBankAccountStatusResponse"
              },
              {
                "description": "Vendor bank account status."
              }
            ]
          },
          "recurringPayments": {
            "type": "boolean",
            "description": "Set as `true` if the vendor has recurring payments enabled"
          },
          "billCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CurrencyCode"
              },
              {
                "description": "Bill currency"
              }
            ]
          },
          "createdTime": {
            "type": "string",
            "description": "Created date and time",
            "format": "date-time"
          },
          "updatedTime": {
            "type": "string",
            "description": "Updated date and time",
            "format": "date-time"
          },
          "balance": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Balance"
              },
              {
                "description": "Vendor account balance information. When bills are created for the vendor, this information is updated."
              }
            ]
          },
          "autoPay": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoPayDto"
              },
              {
                "description": "Vendor auto-pay information.\n\nWhen you enable vendor auto-pay, BILL automatically pays the vendor when a bill is created for the vendor."
              }
            ]
          },
          "networkStatus": {
            "allOf": [
              {
                "$ref": "#/components/schemas/NetworkInvitationStatus"
              },
              {
                "description": "Network connection status. This field appears in the response only when a network connection status is available for the vendor."
              }
            ]
          },
          "paymentNetworkId": {
            "type": "string",
            "description": "Vendor Payment Network ID (PNI). Each vendor with a BILL account is assigned a unique PNI."
          },
          "relevanceScore": {
            "type": "number",
            "description": "Relevance score from the fuzzy name search that matched this vendor. This field appears in the response only for vendors matched by an `fz` filter on `name`.\n\nScores are comparable only among the results of a single search. Do not compare them across searches or against a fixed threshold.",
            "format": "double"
          }
        },
        "description": "Vendors response."
      },
      "VendorUpdateRequestDto": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 100,
            "type": "string",
            "description": "Vendor name"
          },
          "shortName": {
            "maxLength": 40,
            "type": "string",
            "description": "Vendor short name"
          },
          "accountNumber": {
            "type": "string",
            "description": "User account number set by the vendor. Set this field as the billing statement account number for vendor services such as utility or credit card bills.\n\nWhen you pay the vendor, this value appears on the check memo or electronic payment record."
          },
          "accountType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AccountTypeRequest"
              },
              {
                "description": "Vendor account type"
              }
            ]
          },
          "email": {
            "type": "string",
            "description": "Vendor email address"
          },
          "phone": {
            "type": "string",
            "description": "Vendor phone number"
          },
          "address": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AddressUpdate"
              },
              {
                "description": "Vendor address information"
              }
            ]
          },
          "paymentInformation": {
            "allOf": [
              {
                "$ref": "#/components/schemas/PaymentInformationRequestUpdate"
              },
              {
                "description": "Vendor payment information"
              }
            ]
          },
          "additionalInfo": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AdditionalInfoRequest"
              },
              {
                "description": "Vendor additional information"
              }
            ]
          },
          "billCurrency": {
            "allOf": [
              {
                "$ref": "#/components/schemas/CurrencyCode"
              },
              {
                "description": "Bill currency. Three-letter abbreviation in the ISO 4217 format.\n\nThe `billCurrency` value is the currency in the bills you create for the vendor. The value is also the currency in the invoices you receive from the vendor.\n\n**Note**: You can update this field only if the vendor has no bills or payments.\n\nSee <a href=\"https://help.bill.com/hc/en-us/articles/360007172671\">Country information for international payments</a> in the BILL Help Center for more information."
              }
            ]
          },
          "autoPay": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutoPayDto"
              },
              {
                "description": "Vendor auto-pay information.\n\nWhen you enable vendor auto-pay, BILL automatically pays the vendor when a bill is created for the vendor.\n\n**Note**: Enabling vendor `autoPay` requires an MFA-trusted API session. See [MFA setup](https://developer.bill.com/reference/setup) for information about the BILL MFA process."
              }
            ]
          }
        },
        "description": "Update a vendor",
        "example": {
          "name": "Happy Music Supplies (Updated)",
          "accountType": "PERSON"
        }
      },
      "VirtualCard": {
        "type": "object",
        "properties": {
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VirtualCardStatus"
              },
              {
                "description": "Virtual card enrollment status for the vendor"
              }
            ]
          },
          "remitEmail": {
            "type": "string",
            "description": "Virtual card remittance email address set for the vendor"
          },
          "enrollDate": {
            "type": "string",
            "description": "Virtual card enrollment date",
            "format": "date-time"
          },
          "declineDate": {
            "type": "string",
            "description": "Virtual card declined date",
            "format": "date-time"
          },
          "alternatePayByType": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DisbursementType"
              },
              {
                "description": "Alternate payment method for virtual card payment"
              }
            ]
          }
        },
        "description": "Vendor Direct (VCARD) information."
      },
      "VirtualCardStatus": {
        "type": "string",
        "description": "Virtual Card Status enum.",
        "enum": [
          "UNDEFINED",
          "OPEN",
          "PENDING",
          "REQUIRE_MORE_INFO",
          "PAY_FOR_YOUR_OPPORTUNITY",
          "PHONE_NUMBER_NEEDED",
          "ENROLLED",
          "DECLINED",
          "CONFIRMED",
          "RECRUITING",
          "VERBAL_COMMITMENT",
          "PAYER_ASSIST",
          "ON_HOLD",
          "UNKNOWN"
        ]
      }
    }
  }
}
```