---
title: "Update product"
method: PATCH
path: "/products/{companyId}/{id}"
tags: ["Products"]
---

# Update product

`PATCH /products/{companyId}/{id}`

Updates the accounting code and/or additional info of a product identified by `id`. Updating an `id` that does not match any product also returns `200` without applying any change — no `404` is raised.

## Path parameters

- `id` string, required
- `companyId` string, required

## Request body

- PatchProductsRequestSchema
  - `additionalInfo` object — Free-form key/value metadata to attach to the product. Replaces the existing value entirely.
  - `accountingCode` string, nullable — Accounting account code to link the product to.

## Response `200`

Successful Response

- ModifyProductsResponseSchema
  - `id` string, required — Embat product ID

## Other responses

- `401` — Unauthorized. The bearer token is missing, invalid or expired.
- `404` — Not found. The requested resource or `companyId` does not exist.
- `422` — Validation Error

---

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