> For the complete documentation index, see [llms.txt](https://learn.moselle.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.moselle.io/getting-started/fast-tutorial/set-up-inventory.md).

# Step 4: Set Up Inventory

{% hint style="info" %}
**Quick Answer:** Create a warehouse under **Operations → Inventory → Warehouse tab**, then either link it to an existing integration via **Settings → Warehouse** for automatic syncing, or upload a manual inventory CSV snapshot. Takes 1–2 minutes if you have an integration connected.
{% endhint %}

With your catalog and channels in place, load your current stock levels. Moselle uses this to identify what's at risk and what needs to be ordered.

**Time required:** 15–20 minutes

***

## Step 1: Create a Warehouse

1. Go to **Inventory** in the left nav
2. Click the **Warehouse** tab
3. Click **+ Add Warehouse**
4. Enter your warehouse name and address details
5. Click **Create**

{% hint style="info" %}
**Already on Shopify or Amazon?** A synced warehouse for those integrations may already exist under the Warehouse tab. Check before creating a new one.
{% endhint %}

### Link Your Warehouse to an Integration

If you've already connected an integration (e.g. Shopify, Amazon), you can link your warehouse directly to it so inventory syncs automatically — no manual upload needed.

{% embed url="<https://www.youtube.com/watch?v=uF2C8gpNHGM>" %}

1. Click your **avatar** in the top right → **Settings**
2. Click the **Warehouse** tab
3. Click **Create a Warehouse**
4. Enter a name, then select your integration from the **Data source** dropdown
5. Pick the matching location from the second dropdown
6. Click **Create**

{% hint style="success" %}
Once linked, Moselle syncs inventory from that integration automatically. You can skip Step 2 below.
{% endhint %}

For full warehouse type details, see the Create a Warehouse guide in Operations → Inventory.

***

## Step 2: Upload Your Stock Levels

For manual warehouses, upload a snapshot of your current available inventory.

{% stepper %}
{% step %}

### Get the CSV Template

1. Go to **Inventory** → select your warehouse
2. Click **Update Warehouse** → **Upload Inventory Snapshot**
3. Download the **CSV Template**
   {% endstep %}

{% step %}

### Fill In Your Stock

The CSV requires two columns:

| Column      | Description                                              |
| ----------- | -------------------------------------------------------- |
| `sku`       | Must match your catalog SKUs exactly (case-sensitive)    |
| `available` | Current units available (use `0` for out-of-stock items) |

{% hint style="warning" %}
SKUs must match your catalog exactly. Mismatched SKUs will be skipped without an error.
{% endhint %}
{% endstep %}

{% step %}

### Upload the File

1. Return to **Upload Inventory Snapshot**
2. Drag and drop or browse for your CSV
3. Click **Upload**
4. Check that stock levels appear correctly in the warehouse view

{% hint style="success" %}
Your inventory is loaded. Moselle will now use these levels in planning.
{% endhint %}
{% endstep %}
{% endstepper %}

***

## Mo Tip: Let Mo Reformat Your Stock Spreadsheet

If your inventory is tracked in a spreadsheet with a different layout, drop it into Mo and ask:

> *"Help me reformat this stock spreadsheet into a Moselle inventory CSV. Required columns are SKU and available quantity."*

Mo will map your columns to the correct format so you can upload without manual reformatting.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://learn.moselle.io/getting-started/fast-tutorial/set-up-inventory.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
