How The Product Stock Sync Works
The plugin allows you to automatically sync the following inventory fields: “Stock Management”, “Stock Status”, and “Quantity”:

With this plugin, the inventory synchronization between connected WooCommerce stores is happening automatically, in the background:
- A customer purchased a product, and as a result, its stock quantity was decreased.
- An order was refunded, and stock quantities of all related products were restored.
The product inventory can also be synced manually:
- When a product or a product variation’s “Stock Status” or “Quantity” fields have been changed via the WooCommerce interface, for example, by a shop manager.
- When using this tool, in case you need to force re-sync stock statuses and stock quantities of all existing products with a selected store.
Last but not least, the plugin can use either an SKU or a product slug as a sync entity, which means it is used to find similar products and variations across connected stores.
If you would like to sync other product data like images, prices, or custom fields, take a look at the Simple WordPress Crossposting plugin.
1. Connect a store to sync the product stock with
To start the WooCommerce inventory sync, we need to connect stores first. It can be easily done in the plugin settings.
Go to WooCommerce > Settings > Products > Inventory Sync and scroll down a little:

The process of adding a new store becomes much easier if your stores are part of a single WordPress Multisite network.

You don’t need to install the plugin on connected stores unless you need the WooCommerce inventory sync to work both ways. But when using a plugin within a single WordPress multisite network, it should be network-activated.
2. Exclude specific products and variations from the sync
You can easily exclude products whose product stock you don’t want to be synced with connected stores in the product settings.

It is also possible to exclude not the whole product but only some specific variations from the stock sync:

3. Initial synchronization using a tool
As mentioned, the WooCommerce product inventory is synced automatically when an order is made or a product is updated.
But you can also use a tool, which is a part of this plugin, to run a full product stock resync in the background, find it in WooCommerce > Status > Tools. For example, if you just installed the plugin and want to run an initial synchronization of the stock quantities of all products from “Store A” to “Store B”.

How to Configure Central Stock for WooCommerce Stores
You can also use this stock sync plugin when you need to manage the inventory of multiple WooCommerce stores in one place.
However, for the sake of simplicity, the plugin doesn’t create any extra admin pages; you just need to choose a store that will serve the purpose of the central stock. It can be any sub-store of a WooCommerce multisite network as well.
Take a look at the table below to get a clear picture of the configuration steps:
| The central stock store | Sub-stores |
|---|---|
| Install the plugin and connect all the sub-stores in the plugin settings. | Install the plugin and connect the master store (with the central stock) in every sub-store’s settings page. |
That’s pretty much all the configuration we need here.
Using WooCommerce logs
When you have a lot of products in your stores and/or a lot of connected stores, then it is always good to keep track of what’s exactly happening under the hood. This can be easily done with the logs.
My plugin uses the standard WooCommerce logs functionality, which means that you can find the inventory sync logs in WooCommerce > Status > Logs:

Sync Stock Levels Using a WP-CLI Command
The plugin comes with a handy WP-CLI command wp isfw stock-sync that allows you to synchronise stock levels easily (if you know what it is and how to use it).
It can be especially useful for the initial synchronisation.
For example, let’s say you want to sync stock levels for all products between the current store and a specific target store:
$ wp isfw stock-sync --store=rudrastyh.comThere are a bunch of other parameters as well:
| Argument | Description |
|---|---|
[--id=<product-ID>] | You can provide a specific product ID here. If not provided, the plugin will try to run the sync for all published products. |
[--blog_id=<blog-ID>] | When working with a WordPress multisite network, using this parameter, you can provide a specific sub-store ID. |
[--store=<store-URL>] | You can provide a target store URL here (it works for both sub-sites of a multisite network and standalone stores), but please make sure that this store is added in the plugin settings. |