# Run WMS alongside Starshipit
URL: https://support.starshipit.com/articles/14700000000004-run-wms-alongside-starshipit
Canonical: https://support.starshipit.com/articles/14700000000004-run-wms-alongside-starshipit
Markdown: https://support.starshipit.com/articles/14700000000004-run-wms-alongside-starshipit.md
Updated: 2026-05-07

> For the complete documentation index, see [llms.txt](https://support.starshipit.com/llms.txt).

> Run WMS alongside your existing Starshipit workflows with hybrid outbound models or headless mode for inventory tracking while keeping current processes.

**Starshipit WMS** is designed to complement, not replace, your existing Starshipit workflows. You can continue to:

* Use **Starshipit web** to process and print labels
* Use the **Starshipit Pick & Pack mobile app** and other existing pick-and-pack flows
* Use your current **shipping rules, automations and carrier setup**

While you do that, Starshipit WMS:

* Subscribes to **order events** (created, changed, deleted, shipped)
* Tracks **inventory and stock movements** for those orders
* Optionally provides full **inbound, stock management and WMS outbound** flows

This guide explains how to run **hybrid outbound workflows** and **headless setups**, where you keep your current Starshipit processes but still gain WMS visibility and control over stock.

## How Starshipit & WMS work together

Once the **Starshipit WMS integration** is enabled in your Starshipit account, the systems communicate via webhooks and APIs:

* **Starshipit** remains the system of record for:
  + Orders (created/updated/cancelled)
  + Shipments and labels
  + Courier configuration and routing rules
* **Starshipit WMS** becomes the system of record for:
  + Inventory (on hand, available, incoming, allocated)
  + Warehouse locations, putaway, replenishment
  + Stocktakes, adjustments and stock movement history

Key events sent from Starshipit to WMS:

* **order_created** – create/update order in WMS (status **PENDING**).
* **order_changed** – refresh order lines; WMS cancels old allocations/picks and resets to **PENDING** if needed.
* **order_deleted** – cancel allocations and jobs in WMS, free stock back to inventory.
* **order_shipped** – confirm shipment in WMS, write final stock movements and mark order as **SHIPPED** or **PARTIALLY_SHIPPED**.

You decide how much of the outbound process you want WMS to handle:

* Full WMS outbound (allocate, pick, pack & ship in WMS)
* Hybrid (some orders via WMS, some via existing Starshipit workflows)
* Headless (Starshipit handles outbound; WMS just mirrors orders & stock movements)

## Common hybrid models

### Model 1: Inventory & inbound in WMS, outbound in Starshipit

In this setup:

* All **inbound** stock (POs, receiving, putaway) is managed in WMS.
* WMS maintains **accurate inventory** and locations.
* Outbound orders are still picked and shipped using:
  + Starshipit web UI, or
  + Starshipit Pick & Pack / existing pick-and-pack processes
* When labels are printed in Starshipit, WMS receives **order_shipped** events and:
  + Deducts stock
  + Writes shipment stock movements

This gives you full inventory control in WMS without changing how your team currently ships orders.

### Model 2: WMS outbound for one warehouse, Starshipit outbound for others

For multi-location or multi-account setups, you can:

* Use **WMS outbound** (allocate, pick, pack) in one warehouse as a pilot.
* Keep **other warehouses** on existing Starshipit pick/pack flows.
* Use **WMS Override** in the integration to share one WMS across multiple child accounts if needed.

This lets you trial WMS outbound in a controlled environment while keeping other operations unchanged.

### Model 3: Full WMS outbound with Starshipit for labels only

In this model:

* Orders are allocated, picked and packed in WMS.
* At the end of packing, WMS calls Starshipit to create shipments and print labels.
* Starshipit sends **order_shipped** events back to WMS to finalise stock.

This is the "end state" for many customers once they are ready to move all outbound flows into WMS.

## Using WMS for inventory tracking only (headless)

If you are **not ready** to change any outbound workflows, you can still use WMS in a **headless** mode for orders.

### What headless looks like

* Enable the WMS integration and **send order events** from Starshipit.
* Manage **products**, **locations**, **inbound** and **stocktakes** in WMS.
* Keep using:
  + Starshipit UI or Mobile for picking (if used today), and
  + Starshipit for shipping and labels.
* WMS:
  + Creates/updates orders in **PENDING** state.
  + Listens for **order_shipped** events and records stock leaving the warehouse.

In other words, WMS becomes your **inventory ledger** (especially when combined with proper POs, receiving and stocktakes), while Starshipit remains your **operational shipping tool**.

## Use Starshipit Pick & Pack and web workflows with WMS

Many customers already use:

* **Starshipit Pick & Pack** to scan orders and print labels
* **Starshipit web workflows** for picking and packing

You do **not** need to stop using these when enabling WMS.

### How this works in practice

1. Orders import into Starshipit from your ecommerce/ERP as usual.
2. Starshipit sends **order_created** to WMS so the order appears on the WMS orders dashboard.
3. Your team picks and ships using Starshipit Pick & Pack or Starshipit web workflows.
4. When a label is printed, Starshipit fires **order_shipped** to WMS.
5. WMS records stock movements and marks the order as shipped in the WMS view.

Over time, you can move some or all orders to full WMS picking and packing while keeping Starshipit Pick & Pack for supported non-WMS workflows.

## Rollout strategies

Because WMS can run alongside your existing workflows, you have flexibility in rollout:

### Start with inbound only

* Use WMS for purchase orders, receiving, putaway and stocktakes.
* Leave all outbound on existing Starshipit processes.
* This gives you accurate inventory without changing anything your shipping team does today.

### Gradual outbound migration

* **Phase 1: Headless** — WMS logs orders and shipments; you ship everything via Starshipit.
* **Phase 2: WMS outbound for low-risk orders** — begin using WMS allocate/pick/pack for a small channel or SKU set.
* **Phase 3: Extend WMS outbound** — roll out to more orders and channels as the team gains confidence.

### Full WMS adoption

* All warehouses use WMS for inbound, inventory and outbound.
* Starshipit handles label creation, carrier management and shipping automation.

## Best-practice hybrid setups

* **Keep one system as order "truth".** Make all order edits in Starshipit, and let WMS follow via webhooks.
* **Use WMS as stock "truth".** Perform all receiving, stocktakes and adjustments in WMS.
* **Start simple with headless.** Enable WMS to track stock via order_shipped first, then layer on picking and packing later.
* **Segment by warehouse or channel.** Use WMS outbound for specific warehouses or brands while leaving others on existing workflows.
* **Use dashboards to reconcile.** Periodically compare Starshipit shipped orders and WMS stock movements to confirm they line up.

## FAQ

<!-- faq:start -->

<!-- faq:question -->Do I have to change how my team prints labels?<!-- /faq:question -->

No. You can keep printing labels in Starshipit exactly as you do today. As long as order events are enabled, WMS will track shipments via the **order_shipped** webhook.

<!-- faq:question -->Can I use WMS just for inbound and stocktakes?<!-- /faq:question -->

Yes. Many customers start with WMS for purchase orders, receiving, putaway and stocktakes only. Outbound can remain in Starshipit until you are ready to move it.

<!-- faq:question -->What happens if I ship an order in Starshipit without touching it in WMS?<!-- /faq:question -->

When you ship in Starshipit, it sends **order_shipped** to WMS. WMS will create a shipment movement based on the order lines and update inventory — even if you did not allocate or pick the order in WMS.

<!-- faq:question -->Will using hybrid mode cause double-shipping?<!-- /faq:question -->

No, as long as you only ship orders in one place (Starshipit or via WMS triggering Starshipit). WMS does not create shipments on its own — it always relies on Starshipit for label creation and shipment confirmation.

<!-- faq:end -->
