Skip to main content
WooCommerce guide

Hub-and-Spoke for WooCommerce Stores

By ยท Updated ยท 7 min read

What Hub-and-Spoke Means in a WooCommerce Context

Hub-and-spoke inventory management organizes stock around a central fulfillment hub โ€” a primary warehouse or 3PL โ€” that replenishes satellite nodes such as retail locations, regional micro-warehouses, or dropship suppliers. For WooCommerce operators, this architecture determines where stock is held, how it's counted, and which location fulfills each order. The platform's native inventory system is single-location by design, so implementing hub-and-spoke requires deliberate tooling choices.

WooCommerce core tracks one inventory quantity per product variation with no concept of a location field. Every stock number on a product page refers to an aggregate or a single implied location. This makes hub-and-spoke invisible to the native system unless a plugin or external WMS introduces multi-location logic. Operators running more than one fulfillment point hit this wall fast and need a clear plan before scaling.

WooCommerce Native Inventory Limits That Affect Hub-and-Spoke

WooCommerce's stock management lives inside the product editor under the Inventory tab. Fields available natively are: SKU, manage stock toggle, stock quantity, backorder behavior, and low-stock threshold. There is no location field, no bin assignment, no inbound purchase order concept, and no automated replenishment trigger. A hub-and-spoke model requires at minimum the ability to split a single SKU's stock across two location buckets โ€” the hub and the spoke โ€” and that does not exist in core.

Variable products compound the problem. Each variation gets its own inventory block, so a shirt with 10 size-color combinations has 10 separate stock fields. Multi-location tracking across those variations, without a plugin, means manual spreadsheet reconciliation between the WooCommerce database and physical locations. At more than a few dozen SKUs this breaks down entirely.

WooCommerce also lacks native purchase order (PO) creation, meaning the replenishment signal from spoke to hub โ€” the defining operational loop in hub-and-spoke โ€” cannot be automated without a third-party tool. Operators who ignore this create spoke stockouts that are invisible to the hub until a manual count surfaces the gap.

Plugin and App Options That Enable Hub-and-Spoke on WooCommerce

The WooCommerce ecosystem has several plugins that add multi-location inventory. ATUM Inventory Management for WooCommerce introduces locations, purchase orders, and a stock central view within WordPress. Linnworks connects WooCommerce to a multi-location WMS that handles hub replenishment rules and spoke allocation. Extensiv (formerly Skubana) and ShipBob both integrate via WooCommerce APIs and bring hub-and-spoke logic at the 3PL level, routing orders to the spoke closest to the customer while the hub handles replenishment.

For operators who want to stay inside WordPress, WooCommerce Multi Locations Inventory Management (a third-party plugin) adds location-level stock fields to each product and variation, and lets checkout route to the nearest stocked location. The trade-off is that the routing logic is basic compared to a dedicated WMS, and the plugin's performance can degrade with large catalogs above several thousand SKUs.

External WMS platforms like Cin7 and Brightpearl connect to WooCommerce via REST API and treat WooCommerce as an order capture channel only. Stock truth lives in the WMS, and the WMS pushes an aggregated or location-specific quantity back to WooCommerce product fields. This is the cleanest hub-and-spoke separation for stores with more than two locations or high order volume, because WooCommerce never needs to understand internal location logic โ€” it just receives a number to display.

Specific WooCommerce Conventions That Shape Implementation

WooCommerce uses webhooks and a REST API to push order data to external systems. When an order reaches 'Processing' status, a webhook can fire to a WMS or 3PL that then assigns fulfillment to the correct spoke. This is the standard integration handoff point. Operators need to confirm their chosen plugin or WMS supports WooCommerce's webhook payload structure โ€” not all tools handle WooCommerce's variable product line-item format correctly out of the box.

WooCommerce Shipping and WooCommerce Fulfillment are Automattic-owned services built for simple single-location scenarios. They do not support routing orders to different spokes based on stock location. Operators who have started with these services and scaled to hub-and-spoke need to migrate fulfillment logic to a plugin or external WMS rather than extending the native tools.

WordPress multisite setups sometimes appear as a workaround โ€” one site per spoke location, each with its own WooCommerce instance. This creates more problems than it solves: separate product catalogs to maintain, no shared customer records, and no automatic stock transfer visibility between instances. Avoid this pattern. A single WooCommerce installation with a multi-location plugin or an external WMS is far cleaner.

Replenishment Logic: Closing the Hub-to-Spoke Loop in WooCommerce

The operational value of hub-and-spoke comes from the replenishment cycle: spoke inventory drops, a reorder signal goes to the hub, the hub ships stock to the spoke, and spoke levels recover before a stockout occurs. WooCommerce alone cannot generate this signal. The low-stock notification is an email to the store admin โ€” it does not create a purchase order, it does not deduct hub stock, and it does not log a transfer.

With ATUM, operators can set reorder points per location and generate purchase orders against the hub as the default supplier. With a WMS like Cin7 or Brightpearl, the replenishment rules live in the WMS and WooCommerce receives updated available quantities automatically after a transfer is recorded. Whichever tool handles replenishment must write back to the WooCommerce stock field promptly โ€” any lag between the WMS transfer completion and the WooCommerce stock update creates an oversell window.

Operators should also account for WooCommerce's stock reservation behavior. When a customer adds an item to cart, WooCommerce does not hold stock by default until the order is placed and paid. Under high-traffic scenarios this means two customers can simultaneously see the last spoke unit as available. Plugins like WooCommerce Cart Stock Reducer or similar tools add a cart-hold mechanism, which is important when hub-to-spoke replenishment cycles are measured in days rather than hours.

Actionable Setup Path for WooCommerce Hub-and-Spoke

Start by deciding where stock truth lives. If catalog size is under roughly 500 SKUs with two to three locations, a WordPress-native plugin like ATUM can hold location data and keep operations inside one system. Above that threshold, or with same-day fulfillment SLAs, move stock truth to an external WMS and connect it to WooCommerce via API, treating WooCommerce purely as a storefront and order intake layer.

Map the replenishment trigger before going live. Define the spoke reorder point for each SKU, the lead time from hub to spoke, and the minimum hub quantity that should not be depleted by a spoke replenishment. Enter these rules into whichever system holds stock truth, not into WooCommerce manually. Test the full cycle โ€” create a test order, confirm spoke stock decrements, confirm the replenishment signal fires, confirm hub stock decrements when the transfer is recorded, and confirm WooCommerce receives the updated available quantity before opening the cycle to live orders.

Frequently asked questions

Does WooCommerce support multiple warehouse locations natively?

No. WooCommerce core stores one stock quantity per product or variation with no location field. Multi-location tracking requires a plugin such as ATUM or an external WMS connected via the WooCommerce REST API. Any store managing stock across more than one physical location needs one of these solutions to avoid manual reconciliation.

What is the best plugin for hub-and-spoke inventory in WooCommerce?

For stores staying inside WordPress, ATUM Inventory Management adds purchase orders, location-level stock, and reorder points without leaving the WordPress admin. For stores with high order volume or three-plus locations, an external WMS like Cin7, Brightpearl, or Linnworks connected via API provides more robust hub-and-spoke logic with WooCommerce acting as the order capture layer only.

How does WooCommerce handle order routing to the nearest spoke location?

WooCommerce core has no order routing logic. Routing to the nearest stocked location requires either a multi-location plugin with proximity rules or an external WMS that evaluates spoke inventory levels and shipping zones after receiving the order webhook from WooCommerce. The WMS then assigns fulfillment and marks the order shipped, updating WooCommerce status automatically.

Can WooCommerce oversell stock when running hub-and-spoke across multiple spokes?

Yes. WooCommerce does not reserve stock when an item enters the cart, only when an order is placed and paid. Under simultaneous checkout scenarios the last unit at a spoke can be sold twice. Cart-hold plugins address this by temporarily decrementing available stock while checkout is in progress. This risk increases when spoke quantities are low and replenishment cycles are multi-day.

Is a WordPress multisite setup a viable hub-and-spoke workaround for WooCommerce?

No. Running a separate WooCommerce instance per spoke location produces isolated product catalogs, separate customer databases, and no automatic stock transfer visibility between sites. The administrative overhead outweighs any apparent benefit. A single WooCommerce installation with a multi-location plugin or an external WMS is the correct architecture for hub-and-spoke operations.

MG
Written by

Matt is the founder of RunOctopus. He built All Angles Creatures from zero to page-1 rankings in reptile feeder insects in under 60 days using exactly this method โ€” turning a hard, entrenched niche into RunOctopus's proof store for programmatic SEO and AI search citation.

Connect on LinkedIn →

See what Otto would build for your store

Free architecture preview. No card required. Five minutes.

Generate Preview →