Control Exactly When WooCommerce Reduces Your Stock
Choose which order statuses decrement inventory and which statuses restore it. Stop wrestling with premature stock depletion on Net-30 invoicing, warehouse staging, and manual payment verification.
Order Status Stock Rules
| Reduce Stock Statuses Orders entering these statuses decrement available inventory. |
✓ Processing (wc-processing)
✓ Completed (wc-completed)
Pending payment (wc-pending)
On hold (wc-on-hold)
|
|---|---|
| Restore Stock Statuses Orders entering these statuses restore previously decremented inventory. |
✓ Cancelled (wc-cancelled)
✓ Refunded (wc-refunded)
Failed (wc-failed)
|
| Idempotent Safety Lock Prevents duplicate stock deductions across repeat hook firings. | ✓ Active (_order_stock_reduced verification enabled) |
Why WooCommerce stock timing breaks in production.
By default, WooCommerce couples inventory reduction to order creation or payment complete triggers. For stores with delayed wire payments, manual fraud review, or warehouse staging, this inflexible logic creates severe operational friction.
Premature Deduction on B2B & Wire Transfers
Net-30 or invoice orders lock up warehouse inventory before purchase orders are confirmed. If the invoice expires, stock was blocked for real paying customers.
Warehouse Staging vs Payment Confirmation
Stores managing fulfillment staging need stock reduced only when orders enter a custom staging status, not at initial checkout.
Ghost Stock on Unpaid Order Cancellations
When an unpaid order is cancelled, default WooCommerce code can inadvertently restore inventory that was never deducted in the first place, artificially inflating your warehouse count.
Test the state machine in real time.
Click each order transition below to observe how the plugin decrements inventory, enforces idempotency, and restores units without ghost calculations.
Surgical precision across every product type.
Built to integrate cleanly with WooCommerce core without introducing custom database structures or conflicting with existing extensions.
Dual Storage Engine Compatibility
Declares explicit compatibility with High-Performance Order Storage (HPOS / Custom Order Tables) while maintaining fallback compatibility with classic wp_posts storage.
Zero Double-Reduction Guarantee
Every status change verifies the native _order_stock_reduced order metadata flag. Moving between multiple reduction statuses (e.g. Processing → Completed) never decrements inventory twice.
Variation-Level Stock Accuracy
Correctly decrements and restores stock for variable products whether stock is managed at the parent product level or individually on each variation.
Item-Aware Partial Refunds
Restores exact quantities for line-item refunds while ignoring shipping fees, taxes, and non-inventory items.
Zero Phantom Restorations
Cancelling or failing an order that never reduced stock (such as an abandoned checkout) will never increment warehouse inventory.
Native Core Settings Footprint
Saves settings in standard wp_options. Creates zero custom database tables. Fully cleans up on uninstall if requested.
Single-site annual license with full GPLv2 rights
- ✓ 1 production site license + staging domains
- ✓ 1 year of automated updates & compatibility releases
- ✓ Direct developer email support from the plugin authors
- ✓ 100% GPLv2 open-source PHP code freedom
- ✓ 14-day technical satisfaction refund guarantee
Frequently Asked Questions
No. The plugin includes a built-in mathematical idempotency safety lock. It checks WooCommerce's native _order_stock_reduced order metadata flag before taking action. If stock has already been decremented, subsequent matching statuses simply confirm the state without reducing inventory again.
Yes. The plugin is 100% HPOS compatible and declares explicit support using WooCommerce's FeaturesUtil::declare_compatibility API. It functions identically whether your store uses custom order tables or traditional WordPress post storage.
Yes. Any custom order status registered through standard WooCommerce filters (e.g. wc_get_order_statuses) is automatically detected and populated into both the Reduce and Restore status selection lists.
Because the plugin is 100% GPLv2 software, it will continue to function on your store indefinitely. An active commercial license is required only for automated software updates, compatibility patches for future WooCommerce releases, and direct technical support.
Ready to fix your WooCommerce stock timing?
Deploy WooCommerce Stock by Order Status on your store in under 5 minutes. Single-site license for $39/year with full satisfaction guarantee.