# Update vendor

Updates an existing vendor by ID.

Endpoint: PUT /v1/vendors/{id}
Version: 1.0
Security: OAuth2

## Header parameters:

  - `Idempotency-Key` (string,null)

## Path parameters:

  - `id` (string, required)

## Request fields (application/json):

  - `company_name` (string,null)
    Name for vendor

  - `email` (string,null)
    Email for vendor

  - `phone` (string,null)
    Phone number for vendor

  - `payment_accounts` (array,null)
    To update payment instruments, we require the entire payload for each payment instrument that is being updated.

  - `payment_accounts.details` (object, required)
    Payment Instruments associated with the vendor.
Each vendor can only have one payment account per payment instrument type. For instance, a vendor may have associated details for each of ACH, DOMESTIC_WIRE, and CHEQUE, but they cannot have 2 entries for ACH. If you modify a vendor's existing payment instrument type with new details, it will overwrite any previous data.

  - `beneficiary_name` (string,null)
    Name for the Beneficiary

## Response 200 fields (application/json):

  - `id` (string, required)
    Vendor ID: Can be passed to /transfers endpoint to specify counterparty.

  - `company_name` (string,null)

  - `email` (string,null)

  - `phone` (string,null)

  - `payment_accounts` (array,null)

  - `payment_accounts.details` (object, required)


