> 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/operations/inventory/supply-chain-network.md).

# Supply Chain Network

{% hint style="info" %}
**Quick Answer:** Go to **Operations > Inventory > Supply Chain** to see your network as a visual map. Drag suppliers, warehouses, and channels onto the canvas, connect them, and group warehouses into **Regions** so Moselle can forecast demand across locations together. Building an initial map takes about 10 minutes.
{% endhint %}

## Watch: Setting Up Your Supply Chain Mapping

New to the Supply Chain canvas? This walkthrough shows the setup end to end — placing your suppliers, warehouses, and channels, connecting them, and grouping warehouses into regions.

{% embed url="<https://youtu.be/GAFZtWMOx2I>" %}
Set Up Your Supply Chain Mapping with Moselle
{% endembed %}

## What Is the Supply Chain Network?

**The Supply Chain page is** a visual map of where supply is made or bought, and what can move where — from supplier, to warehouse, to the channels that sell it. It lives alongside **Stock Overview** and **Warehouses** under **Operations > Inventory**, and all three share the same tab bar so you can move between them.

Below the canvas, four cards break the same information into tables: **Lanes**, **Sources**, **Stock policies**, and **Regions**. Once your network is mapped, Moselle uses it to route demand and supply correctly: which warehouse a channel's sales should pull from, how long stock takes to move between locations, and — with **Regions** — how demand should split across a group of warehouses instead of landing on just one.

## What You Can Add to the Canvas

| Item             | What it represents                                                                                                                                         |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Supplier**     | Where product is made or sourced from — a finished goods vendor, or a manufacturer that makes it for you                                                   |
| **Warehouse**    | A location holding stock (matches your warehouses in Operations > Inventory)                                                                               |
| **Channel**      | A place you sell (matches your sales channels)                                                                                                             |
| **Region**       | A named group of warehouses whose demand is forecast together                                                                                              |
| **Lane**         | A connection carrying stock between two locations, with a transfer time                                                                                    |
| **Source**       | A connection showing where a location's supply comes from — production, purchase, or transfer — and on what terms (lead time, order minimums and maximums) |
| **Stock policy** | Minimum/maximum inventory targets set on a warehouse                                                                                                       |

Drag any of these from the tray onto the canvas, then draw connections between them left to right — supplier → warehouse → region (if grouped) → channel — to match how product actually flows through your business.

{% hint style="info" %}
Nodes and connections you place on the canvas are saved as drafts locally until you fill in the details that make them real — so your layout survives a refresh even before every connection is fully configured.
{% endhint %}

The tray on the left — **Your places** — lists the warehouses, suppliers, and channels you already have in Moselle. Drag them out; you don't recreate anything here. The **Suppliers** heading also has a **+**, which opens the same **Add supplier** dialog as the Suppliers page, so a vendor you'd forgotten can be created without leaving the map.

## Suppliers, Manufacturers, and Co-Packers

Select a supplier's card and Moselle asks **What do they do?** — the same question as the Add supplier dialog. The answer decides how that supplier's connections behave:

* **Finished goods supplier** — a straight purchase, with one transfer lead time.
* **Turnkey manufacturer** — they make your product and source their own inputs. Connections carry a production lead time *and* a transfer lead time, and planning uses the two added together.
* **Consignment manufacturer** — they make your product from components you send, so Moselle tracks inventory at their facility.

A manufacturer can hold your stock: turn on inventory tracking and a warehouse named after the supplier is created and linked, so the card reads **Inventory tracked at \[warehouse]**. Component vendors can then be connected into that manufacturer, which is how a "we send them the parts" arrangement gets drawn.

{% content-ref url="/pages/RPnjxVQVrygjJyKHTe43" %}
[Supplier Types](/operations/suppliers/supplier-types.md)
{% endcontent-ref %}

## Reading the Connections

Each kind of connection has its own colour and label, so a glance tells you how stock reaches a location:

| Connection               | What it means                                                                                    |
| ------------------------ | ------------------------------------------------------------------------------------------------ |
| **Purchase**             | Bought from a supplier, with one lead time                                                       |
| **Production**           | Made for you — production lead time plus transfer time, shown summed on the line                 |
| **Transfer**             | Moved between two of your own locations over a lane                                              |
| **Sells from (channel)** | The location (or region) a channel's demand is served from                                       |
| **Region share**         | Dotted and grey: not a movement, but which warehouses answer a region's demand and in what share |

## Group Warehouses into Regions

A **Region** groups several warehouses so you can forecast demand against them collectively — for example, an "NA Region" made up of an East Coast and a West Coast warehouse, split 60/40 between them. Instead of every channel's demand pointing at a single location, it fans out across the region's members according to the percentage you set.

{% hint style="warning" %}
**A region only plans demand if its warehouses have a percentage split.** A region with no split set shows a **"No splits set — demand not planned"** warning — its demand isn't being routed anywhere. New regions must have their split total 100% before you can save them.
{% endhint %}

### Create a Region

{% stepper %}
{% step %}

### Open the New Region dialog

Go to **Operations > Inventory > Supply Chain**. Click **+ Region** on the canvas, or open the overflow menu and select **New region**.
{% endstep %}

{% step %}

### Name the region and add warehouses

Give the region a name (e.g. "NA region"), then use **Add warehouse** to build the list of warehouses that belong to it. Next to each warehouse, enter its percentage share of the region's demand — a running total shows you how close you are to 100%.

* Percentages must be set on every warehouse in the region, or left blank on all of them — you can't mix set and unset shares.
* A warehouse can only belong to one region at a time; it drops out of the list once it's assigned.
  {% endstep %}

{% step %}

### Save

Click **Create region**. The dialog shows which channels are already forecasting into the region — channels themselves are connected to a region from the canvas, not from this dialog (see next step). The region appears on the canvas as a small pill showing its name and split (e.g. "North America region · 60 / 40") wherever its member warehouses feed into it.
{% endstep %}

{% step %}

### Connect channels to the region

On the canvas, draw a connection from the region to each channel whose demand should route through it, the same way you'd connect a channel to a single warehouse.
{% endstep %}
{% endstepper %}

### Editing a Region

* **Change the percentage split** from the region's pill on the canvas — click the pencil icon to open the split editor. It still requires every member to total 100% before saving.
* **Add or remove member warehouses** from the **Regions** table (next to **Lanes**, **Sources**, and **Stock policies** on the same page), using **Edit region**.
* A region and its member warehouses are always connected on the canvas — that connection *is* the region, so it can't be deleted by removing the line. To remove a region entirely, archive it.

## Fix Network Problems

When something in your network can't work, a **Network problems** panel appears above the canvas listing each finding by name. They're worth clearing: a location nothing can reach, or a channel with nowhere to sell from, is a gap in planning rather than a cosmetic issue.

| Finding                                        | What it means                                                            | How to fix it                                                                    |
| ---------------------------------------------- | ------------------------------------------------------------------------ | -------------------------------------------------------------------------------- |
| **Channels without location**                  | A channel's demand has nowhere to be served from                         | Connect the channel to a warehouse or region on the canvas                       |
| **Channels fulfilled by unreachable location** | The channel points at a location that nothing can stock                  | Give that location a way in — a supplier, production, or an active transfer lane |
| **Channels fulfilled by archived location**    | An active channel is still pointed at a retired warehouse                | Repoint the channel at a live location                                           |
| **Locations with no way in**                   | Stock is expected here, but nothing produces, buys, or transfers into it | Add a source or an inbound lane                                                  |
| **Lanes touching archived locations**          | A lane still runs to or from a warehouse you've archived                 | Delete the lane, or unarchive the warehouse if it's still in use                 |

{% hint style="info" %}
**Archived warehouses and channels don't raise problems of their own** — switching something off is not a fault. What still gets flagged is a live reference *to* something archived, so nothing dangles unnoticed.
{% endhint %}

{% hint style="info" %}
**Regions count as reachable through their members.** A region isn't a physical place, so supply never lands on the region itself — it arrives at the member warehouses. As long as at least one member can be stocked, the region is fine. A member that nothing can reach is flagged against that warehouse instead.
{% endhint %}

## How This Fits Into Your Planning Cycle

Mapping your supply chain isn't just documentation — Moselle uses it during forecasting and production planning:

* **Forecasting:** When a channel is connected to a warehouse (or to a **Region**), that channel's forecasted demand is assigned there. For a region, demand is split across member warehouses using the percentages you set — this is what makes the split real, rather than a label.
* **Production Planning:** **Lanes** and **Sources** tell Moselle how stock actually reaches a warehouse — production and purchase lead times, and transfer times between locations. If more than one warehouse could supply the same destination, Moselle plans from a single warehouse rather than duplicating the recommendation: it follows an explicit priority you've set on a transfer source first, falling back to the shortest transfer time when you haven't set one.
* **Mo:** Mo reads your mapped network, so questions about where stock comes from and how long it takes are answered against your own routes rather than general rules — and you never have to explain your setup first. It knows which locations supply which, the production and transit time on every route, order minimums and multiples, which channels ship from where, and the same gaps the **Network problems** panel lists. Ask in plain language:

  * "What feeds our East Coast warehouse, and how long does each route take?"
  * "Is transferring `SKU-001` from the West Coast faster than a new order from `Acme Supply Co`?"
  * "Are there any problems with how my supply network is mapped?"

  The more of the map you fill in, the sharper those answers get — a route with no lead time recorded can't produce an arrival date. Mo reads the network but never edits it, so changes still happen on the canvas.

{% hint style="info" %}
An unmapped network doesn't block forecasting or planning — Moselle falls back to your existing warehouse and channel setup. Mapping lanes, sources, and regions makes those calculations reflect how stock actually moves, rather than treating every warehouse as independent.
{% endhint %}

{% content-ref url="/pages/aL0iIO2KMO4ukLGJFYWr" %}
[Ask Mo About Your Supply Chain](/mo/key-capabilities/ask-mo-about-your-supply-chain.md)
{% endcontent-ref %}

## Step-by-Step: Build Your Network

{% stepper %}
{% step %}

### Navigate to Supply Chain

Click **Inventory** in the left sidebar under **Operations**, then click the **Supply Chain** tab.
{% endstep %}

{% step %}

### Place your nodes

Drag your suppliers, warehouses, and channels from the tray onto the canvas. Existing warehouses and channels already in Moselle appear automatically — you don't need to recreate them here.
{% endstep %}

{% step %}

### Connect them

Draw a **Lane** or **Source** between nodes to represent how stock actually moves — supplier to warehouse, warehouse to channel, or warehouse to warehouse. Add a **Stock policy** to a warehouse to set its minimum/maximum inventory targets.
{% endstep %}

{% step %}

### Group warehouses into a Region (optional)

If multiple warehouses serve the same demand together, group them into a **Region** and set the percentage split. See [Group Warehouses into Regions](#group-warehouses-into-regions) above.
{% endstep %}
{% endstepper %}

## Frequently Asked Questions

### What happens if I don't set a percentage split on a region?

**Answer:** The region is flagged with a **"No splits set — demand not planned"** warning, and its member warehouses receive none of the channel demand assigned to the region. Set a split totaling 100% to activate planning for that region.

### Does a region need its own warehouse or location?

**Answer:** No. A region is a forecasting grouping, not a physical location — it doesn't need a backing warehouse of its own. It's made up entirely of the warehouses you add as members.

### Can a warehouse belong to more than one region?

**Answer:** No, a warehouse can only be a member of one region at a time. It drops out of the selection list for other regions once assigned.

### Why is my region flagged as unreachable?

**Answer:** It shouldn't be, as long as one of its member warehouses can be stocked — supply lands on the members, not on the region itself. If the warning persists, check whether every member is missing a source or inbound lane.

### Can I create a supplier from the canvas?

**Answer:** Yes. Click the **+** on the **Suppliers** heading in the tray. It opens the same **Add supplier** dialog as the Suppliers page, and the new supplier appears in the tray ready to drag out.

### Can I delete a region's connection to its member warehouses?

**Answer:** No. That connection represents the region's membership, not a route you drew — it updates automatically as you add or remove members in the Regions table. To remove a region altogether, archive it.

## Troubleshooting Common Issues

| Problem                                                             | Solution                                                                                                              |
| ------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| A region shows a warning on the canvas                              | Open the region and check whether its percentage split totals 100%. Add or adjust shares until it does.               |
| A warehouse isn't available when creating a region                  | It's likely already a member of another region. Remove it from that region first, or choose a different warehouse.    |
| A channel's demand isn't reaching the warehouses I expect           | Confirm the channel is assigned to the correct region (or directly to a warehouse) in the Regions or connection card. |
| I can't find the Supply Chain tab                                   | It's under **Operations > Inventory**, alongside **Stock Overview** and **Warehouses**.                               |
| A **Network problems** panel is showing findings I don't understand | Each finding names the entity involved — see [Fix Network Problems](#fix-network-problems) for what each one means.   |
| A supplier won't accept a component vendor connection               | Set the supplier to a manufacturing type and turn on inventory tracking at its facility first.                        |
| A supplier I need isn't in the tray                                 | Click the **+** on the **Suppliers** heading to create it without leaving the page.                                   |

## Related Guides

{% content-ref url="/pages/1557jhyY5iOLsVmCJBgN" %}
[Create a Warehouse](/operations/inventory/create-a-warehouse.md)
{% endcontent-ref %}

{% content-ref url="/pages/FW5BIY6NMDJQG2UyJCBL" %}
[Stock Overview](/operations/inventory/stock-overview.md)
{% endcontent-ref %}

{% content-ref url="/pages/RPnjxVQVrygjJyKHTe43" %}
[Supplier Types](/operations/suppliers/supplier-types.md)
{% endcontent-ref %}

{% content-ref url="/pages/aL0iIO2KMO4ukLGJFYWr" %}
[Ask Mo About Your Supply Chain](/mo/key-capabilities/ask-mo-about-your-supply-chain.md)
{% endcontent-ref %}
