---
title: "Create a single price book"
method: POST
path: "/price_books"
tags: ["Price Books"]
---

# Create a single price book

`POST /price_books`

Create a price book

🔒 Requires: `products:write:price_books` `customers:read` scopes

## Request body

- PriceBookCreateRequest
  - `customer_group_ids` string[], required
  - `name` string, required — Price Book name.
  - `outlet_ids` string[], required
  - `restrict_to_platform` string, nullable — `"0"` - all platforms, `"1"` - in store, `"2"` - ecommerce.
  - `valid_from` string, nullable — The date when the Price Book becomes valid (active).
  - `valid_to` string, nullable — The date when the Price Book becomes invalid (inactive).

## Response `200`

- PriceBookCreateResponse
  - `data` PriceBookCreateResponseData
    - `customer_groups` CustomerGroup[]
      - `created_at` string — Creation timestamp in UTC.
      - `deleted_at` string, nullable — Deletion timestamp in UTC.
      - `group_id` string — The customer group identifier.
      - `id` string — Auto-generated object ID.
      - `name` string, required — The customer group name.
      - `retailer_id` string — The retailer identifier
      - `updated_at` string — Last update timestamp in UTC.
      - `version` integer — Auto-incrementing object version number.
    - `id` string
    - `name` string
    - `outlets` Outlet[], nullable
      - `attributes` Attribute[], required — The outlet attributes such as `low_stock_warning`, `order_reference`, `order_reference_prefix`, `return_reference`, `return_reference_prefix`.
        - `key` string, required — The key for the attribute.
        - `value` string, required — The value for the attribute.
      - `currency` string, required — Currency name.
      - `currency_symbol` string, required — Currency symbol.
      - `default_tax_id` string, required — Default tax id used for sales in this outlet. **deprecated**
      - `deleted_at` string, nullable — Deletion timestamp in UTC.
      - `display_prices` 'inclusive' | 'exclusive', required — Indicates whether prices in this outlet should be displayed as tax-inclusive.
      - `email` string — Specified email for the outlet.
      - `id` string, required — Auto-generated object ID.
      - `latitude` string, nullable — Geographical latitude of the outlet.
      - `longitude` string, nullable — Geographical longitude of the outlet.
      - `name` string, required — The outlet name.
      - `phone` string, nullable — Contact phone number for the outlet.
      - `physical_address_1` string, nullable — Physical address, line 1.
      - `physical_address_2` string, nullable — Physical address, line 2.
      - `physical_city` string, nullable — Physical address, city.
      - `physical_country_id` string, nullable — Physical address, country code.
      - `physical_postcode` string, nullable — Physical address, post code.
      - `physical_state` string, nullable — Physical address, state.
      - `physical_suburb` string, nullable — Physical address, suburb.
      - `time_zone` string, nullable, required — Outlet timezone. **read only**
      - `version` integer, required — Auto-incrementing object version number.
    - `restrict_to_platform` string
    - `retailer_id` string
    - `type` string
    - `valid_from` string, nullable
    - `valid_to` string, nullable

---

[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)
