---
title: "Update a supplier"
method: PUT
path: "/suppliers/{supplier_id}"
tags: ["Suppliers"]
---

# Update a supplier

`PUT /suppliers/{supplier_id}`

## Request

- Base URL: `https://example.retail.lightspeed.app/api/2026-10`
- URL: `https://example.retail.lightspeed.app/api/2026-10/suppliers/{supplier_id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/lightspeedhq/apis/lightspeedhq/docs/suppliers/:supplier_id/put.ts> (a function with typed inputs; its response is checked against the schema)

Updates a supplier.

🔒 Requires: `suppliers:write` scope

## Path parameters

- `supplier_id` string, required

## Request body

- CreateSupplierRequest
  - `contact` object, nullable, required: Contact information for the supplier.
    - `company_name` string, nullable: The name of the supplier company. This field is defaulted to the supplier name if not provided.
    - `email` string, nullable: The contact email of the supplier.
    - `fax` string, nullable: Fax number of the supplier.
    - `first_name` string, nullable: The firstname of the contact person.
    - `last_name` string, nullable: The last name of the contact person.
    - `mobile` string, nullable: Mobile contact number of the supplier.
    - `phone` string, nullable: Physical contact number of the supplier.
    - `physical_address1` string, nullable: Line 1 address of the supplier's physical address.
    - `physical_address2` string, nullable: Line 2 address of the supplier's physical address.
    - `physical_city` string, nullable: City of the supplier's physical address.
    - `physical_country_id` string, nullable: ID of the country of the supplier's physical address.
    - `physical_postcode` string, nullable: Postcode of the supplier's physical address.
    - `physical_state` string, nullable: State of the supplier's physical address.
    - `physical_suburb` string, nullable: Suburb of the supplier's physical address.
    - `postal_address1` string, nullable: Line 1 address of the supplier's postal address.
    - `postal_address2` string, nullable: Line 2 address of the supplier's postal address.
    - `postal_city` string, nullable: City of the supplier's postal address.
    - `postal_country_id` string, nullable: ID of the country of the supplier's postal address.
    - `postal_postcode` string, nullable: Postcode of the supplier's postal address.
    - `postal_state` string, nullable: State of the supplier's postal address.
    - `postal_suburb` string, nullable: Suburb of the supplier's postal address.
    - `twitter` string, nullable: Twitter handle of the supplier contact.
    - `website` string, nullable: The website address of the supplier
  - `default_markup` number: This is used for record-keeping purposes and it does not have any effect on your products.
  - `description` string, nullable: The Supplier description.
  - `name` string, required: The Supplier name.

## Response `200`

- object
  - `id` string, uuid: The id of the supplier updated.

---

[API](https://skmtc.dev/lightspeedhq/apis/lightspeedhq.md) - [All operations](https://skmtc.dev/lightspeedhq/apis/lightspeedhq/llms.txt) - [OpenAPI document](https://skmtc.dev/lightspeedhq/apis/lightspeedhq/revisions/463fb1f94056?raw)
