# Inventory strategies

Commerce Layer supports different [inventory model](https://docs.commercelayer.io/developers/v/api-reference/inventory_models) strategies that affect the way the order line items are fulfilled.

Specifically, an inventory model strategy is responsible to decide how many shipments are generated and from which stock location each shipment will be shipped. It is also key in managing the [stock transfers](https://docs.commercelayer.io/developers/v/api-reference/stock_transfers) (if any) from one stock location to another.

![A sample inventory strategy diagram](/files/A4Thprj9sfcFVdBCDosZ)

This guide will walk you through the different logic behind each supported strategy.

{% hint style="info" %}
If you're happy with the selected inventory strategy, there's no additional action required from your side (anyway, it can be helpful to know how they work so that you can understand which one best suits your needs). All of the strategies automatically generate the resources based on their predefined logic. If you need to modify those resources or build custom / more complex inventory strategies, you still have the option to do it. You can create, update, or delete [shipments](/core-api-reference/shipments.md), [stock line items](/core-api-reference/stock_line_items.md), and [stock transfers](/core-api-reference/stock_transfers.md) upon specific conditions.
{% endhint %}

### Supported strategies

These are the inventory model strategies Commerce Layer currently supports.

{% content-ref url="/pages/-MZHc\_fDyICD3RwoCuq5" %}
[No split](/how-tos/inventory/strategies/no-split.md)
{% endcontent-ref %}

{% content-ref url="/pages/FhciUV3L33vbqs9o8Ubp" %}
[Split shipments](/how-tos/inventory/strategies/split-shipments.md)
{% endcontent-ref %}

{% content-ref url="/pages/sMG5Vyc8rsBJHs44GNqV" %}
[Split by line items](/how-tos/inventory/strategies/split-by-line-items.md)
{% endcontent-ref %}

{% content-ref url="/pages/-MZHcdAawTBBrPYiNaw8" %}
[Ship from primary](/how-tos/inventory/strategies/ship-from-primary.md)
{% endcontent-ref %}

{% content-ref url="/pages/-MZHcikK4WSRJ9RkTkMb" %}
[Ship from first available (or primary)](/how-tos/inventory/strategies/ship-from-first-available-or-primary.md)
{% endcontent-ref %}

{% hint style="info" %}
If no strategy is set on the inventory model the default one — **no split** — is used. Otherwise, remember that — in terms of stock location prioritization (i.e. *primary* vs *secondary*) — the smaller the number, the higher the priority.
{% endhint %}


---

# 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/how-tos/inventory/strategies.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.
