---
title: "Updates a vendor"
method: PUT
path: "/vendors/{vendor_id}"
tags: ["Vendors"]
---

# Updates a vendor

`PUT /vendors/{vendor_id}`

IMPORTANT: This is a full-replace operation (PUT semantics). All fields must be
included in the request body — omitting any field will set it to null, wiping
existing data. Always call retrieve-a-vendor first to fetch the current record,
then include ALL existing fields in your update request along with your changes.

## Path parameters

- `vendor_id` string, required

## Request body

- VendorRequest
  - `name` string, required
  - `account_code` string — The account code found in the Chart of Accounts
  - `address` Address
    - `line1` string, required
    - `line2` string
    - `city` string, required
    - `state` string, required — State or province code (e.g. 'TN', 'CA' for US; 'ON' for Canada). Required when address is provided.
    - `zip_code` string, required
    - `country` string, required — Two-letter country code (ISO 3166-1 alpha-2).
  - `email` string, email
  - `payment_terms` integer
  - `external_references` ExternalReference[]
    - `type` string, required
    - `id` string, required
    - `url` string, uri
  - `ten_ninety_nine_eligible` boolean
  - `tax_id` string
  - `fields` object[]
    - `field_id` string, uuid, required
    - `field_value_id` string, uuid, required

## Response `200`

OK

- VendorResponse
  - `name` string, required
  - `account_code` string — The account code found in the Chart of Accounts
  - `address` Address
    - `line1` string, required
    - `line2` string
    - `city` string, required
    - `state` string, required — State or province code (e.g. 'TN', 'CA' for US; 'ON' for Canada). Required when address is provided.
    - `zip_code` string, required
    - `country` string, required — Two-letter country code (ISO 3166-1 alpha-2).
  - `email` string, email
  - `payment_terms` integer
  - `external_references` ExternalReference[]
    - `type` string, required
    - `id` string, required
    - `url` string, uri
  - `ten_ninety_nine_eligible` boolean
  - `tax_id` string
  - `fields` object[]
    - `field_id` string, uuid, required
    - `field_value_id` string, uuid, required
  - `id` string, uuid, required
  - `updated_at` string, date-time, required

## Other responses

- `default` — Error

---

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