Description
WC Backorder Split is a free WooCommerce extension that automatically creates a separate order with status “Backordered” for the products that you don’t have in stock (Products on backorder).
Key Features
- Automatic Order Splitting – Automatically splits orders when products are on backorder
- Complete Order Data Transfer – Copies shipping methods, payment info, fees, coupons and taxes to backorder
- Order Relationship Tracking – Links parent and backorder orders for easy reference
- Custom Order Status – Adds “Backordered” status to WooCommerce
- Order Notes – Automatically adds notes explaining the split to both orders
- Admin Interface – Shows linked orders directly in order details page
- HPOS Compatible – Full support for WooCommerce High-Performance Order Storage
- Developer Friendly – Extensive hooks and filters for customization
Developer Features
Developers can extend the plugin using built-in hooks:
wcbs_before_split_order– Action before order splittingwcbs_after_split_order– Action after order splittingwcbs_backorder_created– Action when backorder is createdwcbs_split_order_error– Action on split errorwcbs_should_split_order– Filter to prevent splittingwcbs_backorder_items– Filter to modify backorder itemswcbs_backorder_status– Filter to change backorder statuswcbs_meta_fields_to_copy– Filter to add/remove meta fields copied to backorderwcbs_disable_emails_on_split– Filter to control email suppression during split
If you enjoyed this plugin then please put a review, that will encourage me to bring some more …
Installation
Minimum Requirements
- WooCommerce 3.0 or later
- Upload ‘wc-backorder-split’ to the ‘/wp-content/plugins/’ directory or install the plugin through the WordPress plugins screen directly.
- Activate the plugin through the ‘Plugins’ menu in WordPress
- Done!
FAQ
-
How It Works?
-
check installation
Reviews
Contributors & Developers
“WC Backorder Split” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “WC Backorder Split” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
2.2.0 – 2026-05-06
- Enhancement – Backorder order creation now suppresses WooCommerce emails to prevent duplicate new-order and processing notifications.
- Enhancement – Backorder order now inherits all standard order fields: currency, prices include tax, customer IP, user agent, transaction ID, date paid, date completed, and stock reduced flag.
- Enhancement – WooCommerce order attribution and VAT exemption meta fields are now copied to the backorder order.
- Enhancement – Line items are cloned (not re-added via add_product) preserving product variations, custom fields, and all item-level meta data.
- Enhancement – Per-unit prices are captured before any order mutation so discount-adjusted totals remain correct on both orders.
- Enhancement – _reduced_stock meta is now split proportionally between the original and backorder order items.
- Enhancement – Address indexes (_billing_address_index, _shipping_address_index) are now copied to the backorder order for correct address search results (HPOS-aware).
- Enhancement – Both orders are scheduled for WooCommerce Admin analytics re-import after a split so revenue reports stay accurate.
- Enhancement – Added wcbs_meta_fields_to_copy and wcbs_disable_emails_on_split filters for developer extensibility.
- Fix – Stock quantity 0 at cart time now correctly removes the item from the original order instead of leaving it duplicated across both orders.
- Fix – Removed erroneous add_item() call after in-place source item update that caused calculate_totals() to double-count the item.
2.1.0 – 2026-02-17
- Security – Fixed unsanitized $_SERVER[‘REQUEST_URI’] access in REST API detection.
- Enhancement – Added comprehensive order data copying: shipping methods, payment info, fees, coupons, and taxes.
- Enhancement – Added order relationship linking between parent order and backorder.
- Enhancement – Added order notes to both orders explaining the split operation.
- Enhancement – Added admin panel display showing linked orders in order details.
- Enhancement – Added developer hooks for extensibility (wcbs_before_split_order, wcbs_after_split_order, wcbs_backorder_created, wcbs_split_order_error).
- Enhancement – Added filter hooks for customization (wcbs_should_split_order, wcbs_backorder_items, wcbs_backorder_status).
- Enhancement – Improved item meta data copying during split to preserve product variations and custom data.
- Enhancement – Added comprehensive PHPDoc documentation with @since tags throughout codebase.
- Fix – Critical: Added protection against duplicate order splits on page reload.
- Fix – Fixed fatal error “Call to a member function save() on int” when copying item meta data.
- Fix – Fixed order splitting logic to work correctly when product stock status is already ‘onbackorder’.
- Fix – Removed unnecessary is_on_backorder() check that prevented stock quantity tracking.
- Fix – Properly retrieve order item objects after add_product() to enable meta data copying.
- Fix – Updated version number consistency across all plugin files.
- Fix – Updated @version tags in PHPDoc blocks to reflect current version.
- Fix – Made bulk action text translatable for better localization support.
- Fix – Added return value to is_request() method for better error handling.
2.0 – 2025-11-10
- Security – Added CSRF protection with nonce validation for AJAX requests.
- Security – Added capability checks for admin operations.
- Security – Enhanced input validation and sanitization.
- Enhancement – Improved error handling with try-catch blocks and logging.
- Enhancement – Added comprehensive PHPDoc documentation.
- Enhancement – Optimized performance by loading admin styles only on relevant pages.
- Enhancement – Improved database query efficiency using specific item types.
- Enhancement – Enhanced product and order validation throughout the codebase.
- Enhancement – Added detailed error logging for debugging and monitoring.
- Fix – Fixed class reference in singleton pattern documentation.
- Fix – Improved code structure and readability.
- Tweak – Maintained full HPOS (High-Performance Order Storage) compatibility.
1.9 – 2025-05-14
- Enhancement – WooCommerce Version 9.8.5 compatibility added.
1.8 – 2024-07-29
- Enhancement – WooCommerce Version 9.1.4 compatibility added.
- Enhancement – WooCommerce High Performance Order Storage compatibility added.
1.7 – 2022-06-09
- Enhancement – WooCommerce Version 6.5.1 compatibility added.
1.6 – 2021-01-16
- Fix – Negative stocks checking issue fixed.
1.5 – 2021-01-15
- Fix – Parent order quantity issue fixed.
- Tweak – WC 4.9.0 support added.
1.4 – 2020-06-12
- Enhancement – Deactivation feedback form added.
- Enhancement – Plugin structure updated.
- Tweak – WC 4.2 support added.
1.3 – 2019-06-13
- Order status updation issue fixed
1.2 – 2019-06-11
- Order splitting bug fixes
1.1 – 2019-04-8
- Guest user data in backorder bug fixed
1.0
- Initial release

