Ever needed to tweak a Processing order after payment?
By default, WooCommerce doesn’t let you edit orders once they’ve been paid. That’s because once the payment is complete, changing totals or quantities could cause accounting or fulfillment issues.
Still, there are legitimate cases where you might need to adjust an order after it moves to Processing: maybe to fix a product note, update a shipping field, or correct a simple mistake.
Let’s make that possible.
Table of Contents
WooCommerce Order Statuses (Quick Recap)
WooCommerce uses several order statuses to handle different stages of the checkout and fulfillment process:
- Pending payment – The order is waiting for payment.
- On hold – The order is waiting for something, like a manual bank transfer (BACS).
- Processing – The payment was received, and the order is being prepared.
- Completed – The order is shipped and finalized.
- Cancelled – The order was cancelled by the customer or automatically.
- Refunded – The order was fully refunded.
- Failed – The payment failed.
Normally, only Pending payment and On hold orders are editable, which makes sense for most stores.
But if you want to allow edits for Processing orders too, all it takes is one small snippet.
The Snippet to Make Processing Orders Editable
Before you make any code changes, have a backup of your site. This will help you restore things in case of unforeseen errors. I recommend using Jetpack Backup for real-time backups and one-click restores.
Open your functions.php file located in wp-content/themes/your-theme-name/ and add this code at the end of the file:
/**
* @snippet How to Make “Processing” Orders Editable in WooCommerce
* @author Nicola Mustone
* @author_url https://nicolamustone.blog/2015/05/14/how-to-edit-processing-orders/
* @tested-up-to WooCommerce 10.3.X
* @license GPLv2
*/
add_filter( 'wc_order_is_editable', function( $is_editable, $order ) {
return $order->get_status() === 'processing' ? true : $is_editable;
}, 10, 2 );
That’s it. With this snippet in place, Processing orders will behave like Pending payment or On hold orders when you try to edit them.
Allow More Editable Statuses
If you’d like to make multiple statuses editable (for example, both Processing and Completed), you can extend the condition like this:
add_filter( 'wc_order_is_editable', function( $is_editable, $order ) {
return in_array( $order->get_status(), [ 'processing', 'completed' ], true ) ? true : $is_editable;
}, 10, 2 );
Use this carefully, editing completed or refunded orders could affect order reports or stock adjustments, depending on your setup.
Have you tried allowing editable Processing orders in your store? Let me know how it worked for you in the comments. I also wrote an article about how to edit orders in WooCommerce, if you need to learn more about it!


Leave a Comment