# Stock locations

Stock locations contain the inventory of the [SKUs](https://docs.commercelayer.io/core-api-reference/skus) that are being sold in terms of [stock items](https://docs.commercelayer.io/core-api-reference/stock_items) and their quantity. The stock location's address is the "From" address on the shipping labels.

The list of [inventory stock locations](https://docs.commercelayer.io/core-api-reference/inventory_stock_locations) determines the availability of SKUs that are being purchased. The list of [inventory return locations](https://docs.commercelayer.io/core-api-reference/inventory_return_locations) determines the available options for returns.

Based on the selected inventory model strategy [stock transfers](https://docs.commercelayer.io/core-api-reference/stock_transfers) might be created from a stock location (i.e. secondary) from another (i.e. primary).

You can optionally define a custom alphanumeric (case-sensitive) `code` for your stock locations, provided that it's unique across the environment (it can contain underscore and hyphens, spaces are not allowed , the maximum length is **25** characters).

<details>

<summary>Data model</summary>

Check the related [ER diagram](https://commercelayer.io/docs/data-model/stock-locations) and explore the flowchart that illustrates how the stock location resource relates to the other API entities.

</details>

<details>

<summary>How-to</summary>

Check the related [guide](https://docs.commercelayer.io/developers/v/how-tos/inventory-model-strategies) to learn more about the available inventory model strategies, how they work, and how stock locations are involved in the process.

</details>
