---
title: "Create a custom inventory adjustment reason"
method: POST
path: "/custom_inventory_adjustment_reasons"
tags: ["Inventory"]
---

# Create a custom inventory adjustment reason

`POST /custom_inventory_adjustment_reasons`

Creates a new custom inventory adjustment reason for the authenticated retailer.

🔒 Requires: `inventory:write` scope

## Request body

- CreateCustomInventoryAdjustmentReasonRequest — Parameters for creating a new custom inventory adjustment reason.
  - `enabled` boolean, required — Whether the reason can be selected when creating stock adjustments.
  - `name` string, required — Display name of the reason. Must be unique within the retailer. Max 30 characters.
  - `type` 'POSITIVE' | 'NEGATIVE', required — Whether the reason applies to positive (stock-in) or negative (stock-out) adjustments.

## Response `200`

The custom inventory adjustment reason was successfully created.

- CustomInventoryAdjustmentReasonSingleton — A single custom inventory adjustment reason response.
  - `data` CustomInventoryAdjustmentReason, required — A custom inventory adjustment reason that retailers can use when creating stock adjustments.
    - `created_at` string, date-time, required — The creation timestamp in RFC 3339 format.
    - `enabled` boolean, required — Whether the reason can be selected when creating stock adjustments.
    - `id` string, uuid, required — Auto-generated object ID.
    - `is_from_external_source` boolean, required — `true` when the reason was created via the API; `false` when created via the X-Series UI.
    - `name` string, required — Display name of the reason. Unique within the retailer. Max 30 characters.
    - `type` 'POSITIVE' | 'NEGATIVE', required — Whether the reason can be used for positive (stock-in) or negative (stock-out) adjustments.
    - `updated_at` string, date-time, required — The last update timestamp in RFC 3339 format.
    - `version` integer, required — Auto-incrementing object version number.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `409` — Conflict
- `422` — Unprocessable Entity

---

[API](https://skmtc.net/lightspeedhq/apis/api-2026-07.md) · [All operations](https://skmtc.net/lightspeedhq/apis/api-2026-07/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lightspeedhq/api-2026-07/revisions/72d4ceb46dbb/schema)
