# SKUs

<figure><img src="/files/6sxeBoGOre2YkwAycTc3" alt=""><figcaption></figcaption></figure>

{% hint style="info" icon="lightbulb" %}
SKUs are the link between your product catalog and Commerce Layer. Each SKU can have prices across multiple price lists and stock items across many locations. Two flags let you handle digital and infinite-stock products.
{% endhint %}

## What is a SKU?

SKU stands for *Stock Keeping Unit*. It is a unique identifier for a specific product variant, used to track availability and stock variations of an item (e.g., the *Medium* or *Large* size of a jogger pant).

{% hint style="info" icon="circle-info" %}

#### Commerce Layer is not a content management system

Commerce Layer handles the transactional side of commerce, leaving all product, category, and catalog information to the CMS of your choice. The SKU code is the link between the two — tied to a single variant, not to a generic "product".
{% endhint %}

A [SKU](/core-api-reference/skus.md) consists of letters and numbers (EAN code, UPC, or any other format), such as `LSLEEVMM000000FFFFFFMXXX`. It identifies each variant's characteristics: manufacturer name, brand, style, color, weight, size, and more.

Each SKU can have one or more prices in one or more price lists, and many stock items across many stock locations. The presence of both a price and a stock item determines the SKU's availability for a given market or customer group.

## Digital products

SKUs usually refer to physical goods ready to be shipped to the customer. That's the most common case, but not the only one.

Commerce Layer offers two flags for handling other scenarios:

* **Do not ship** — prevents shipment creation when the SKU is added to an order. The relationship with a shipping category is optional in this case.
* **Do not track** — makes the SKU always available regardless of stock levels.

Combining these two flags lets you handle scenarios such as intangible products that generate no shipment and products with a virtually infinite stock.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.commercelayer.io/data-model/products/skus.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
