WooCommerce
Sales channel
WooCommerce warehouse management with the OptiWMS plugin
OptiWMS connects to WooCommerce through a small WordPress plugin, OptiWMS for WooCommerce, paired to your account with a one-time token. Paid orders reach the warehouse as sales orders, along with their edits, refunds and cancellations. OptiWMS imports the store's products and sets each one's stock from what is on hand, and when an order is dispatched the store order gets its tracking number and moves to completed.
What syncs between OptiWMS and WooCommerce
- Paid orders
- Paid orders appear on Sales orders with channel WooCommerce within a minute, or within seconds on a store with traffic or a real cron.
- Products
- Pairing imports every product and variation, linked by SKU to an existing product or created new, and changes saved in WordPress follow within a minute.
- Edits, refunds and cancellations
- Before picking starts, a change updates the order lines and a full refund or cancellation cancels the order. Once picking has started, OptiWMS raises an Order edited task on the Exceptions page naming what changed.
- Stock
- OptiWMS sets each linked product to an absolute figure after every order event: on hand in the mapped warehouses, less open orders from every channel, less the buffer. Every 6 hours it re-sends the stock of every mapped product.
- Unpaid holds
- The plugin subtracts units WooCommerce holds for on-hold orders that are not paid yet, so a bank-transfer order waiting for payment keeps its units off sale.
- Tracking
- When you dispatch, the WooCommerce order receives the tracking number and moves to completed, and the customer's notification email includes the tracking details.
How it works in the warehouse
A paid order goes to the warehouse chosen when the store was connected.
If the shopper's shipping address, phone or shipping method changes before picking starts, the order's shipment updates and the label is bought for the new address.
A refund or edit after picking has started leaves the order as it is and raises an Order edited task, for example "The store refunded 21.99 of this order after picking started (LEG-LTH-M: 1 unit removed)", so someone checks what still ships.
At the pack station the label comes through the shipping mapping for the order's WooCommerce shipping method and prints at the bench.
Mark shipped with a tracking number completes the store order and sends the customer the tracking. An order closed as shipped without tracking, such as a pickup, moves to completed with a private order note.
Canceling the order in OptiWMS cancels it in the store too, with an order note, and WooCommerce puts the units back in its count. Issue the refund in WooCommerce.
Setting it up
Check the requirements: WordPress 6.0 or newer, WooCommerce 8.0 or newer, PHP 8.0 or newer, and admin access to both OptiWMS and WordPress.
In OptiWMS, open Integrations > Connect a store, click the WooCommerce card, choose the warehouse and press Connect. Copy the pairing token, which starts with owmswc. and is shown once.
In WordPress, upload the plugin zip under Plugins > Add New > Upload Plugin and activate it. Your OptiWMS contact provides the zip.
Go to WooCommerce > OptiWMS, paste the token and press Connect to OptiWMS. The store's row in OptiWMS changes from "Waiting for the store to pair" to ✓ Enabled, and OptiWMS imports the store's products.
Map each WooCommerce shipping method to a carrier service under Integrations > Map shipping options.
WooCommerce questions
Will the plugin slow down checkout?
No. The plugin queues each send with WooCommerce's background task runner, Action Scheduler. A slow or unreachable OptiWMS does not delay the shopper.
Why should my store run a real cron?
The plugin sends orders from WordPress's own scheduler, which by default runs only when someone visits the store. A quiet store can hold an order until the next visitor, so have your host run the scheduled tasks every minute.
Which WooCommerce orders become warehouse work?
Orders in Processing, or in any status a payment plugin registers as paid. Pending payment, On hold, Failed and Draft orders arrive once they become paid, for example when you confirm a bank transfer and move the order to Processing. A Completed order is not imported.
Does WooCommerce change my product details in OptiWMS?
Yes. While a product is linked, its name, barcode, weight, price and image come from WooCommerce; bins, stock, cost, dimensions and lot or serial tracking stay editable.
Can I connect several WooCommerce stores?
Yes. Each store is its own integration with its own pairing token and warehouse. Orders are matched by store and order number, so two stores with the same order numbers never mix.
What if an order has a SKU OptiWMS does not have?
OptiWMS asks the store for that product, creates it and accepts the order. A line it still cannot match, such as a deleted product, arrives held as Needs a product until someone answers it on the order page.
See it running on your own catalog.
Try every feature free for 14 days. We set up your trial account within one business day, then you connect your store and run real orders through pick, pack and print. Or talk to us and we will find a time to show you the product on a demo account.
14 days, every feature, no card needed. Plans from $59 a month including GST.