Posted on

How to Bulk Edit Core & Custom WooCommerce Order Statuses?

Learn how to view, manage and bulk edit default and custom WooCommerce order statuses from one place using an Excel-like sheet editor.

WooCommerce order status blog featured image

Last updated on October 30, 2023

Do your WooCommerce store handles hundreds and thousands of orders? Does changing order statuses and managing order details consume your valuable time?

Then this article will surely free you from that mundane, without you requiring any coding skills.

This blog post explains how you can manage default or core WooCommerce order statuses in bulk and other order management fields, simple and quick.

We’ll also see how to manage WooCommerce custom order statuses.

This will be super useful for shop managers and admins who manage the backend orders list, as they can now easily search and take actions on orders with a specific status.

The default WooCommerce order statuses

What is the order status in WooCommerce?
In simple terms, the order status is a tag that represents the current state of the order.

Orders are created when a customer completes the checkout process. They are visible only to users assigned the ‘Admin’ and ‘Shop Manager’ roles. Each order is given a unique ‘Order ID’ and is assigned a ‘Status’.

According to where the order is in the payment to the delivery cycle, it gets assigned a status.

Here are the core order statuses in WooCommerce:

  • Pending payment – Order received but no payment initiated.
  • Failed – Payment failed or was declined. It may be rejected from the payment platform (like PayPal) or it requires authentication (SCA).
    Note – This status may not show immediately and instead show as Pending until verified.
  • Processing – Payment received, the stock has been reduced and the order is awaiting fulfillment.
    Note – All product orders require processing, except for those orders that only contain both virtual and downloadable products.
  • Completed – Order fulfilled and completed. It requires no further action, indicating all went well.
  • On hold – Requires confirmation from the shop manager. The stock is reduced but the customer hasn’t made a payment.
  • Canceled – Canceled by the admin or the customer. The stock is increased and no further action is required. However, you can reach out to the customer to know the reason.
  • Refunded – Refunded by the admin, no further action required.
  • Authentication required – Awaiting action by the customer to authenticate the transaction and/or complete SCA requirements.

For more information on managing orders, refer to our WooCommerce order management guide.

How to change order status in WooCommerce?

Right from the moment an order is placed in your store, till it is delivered, the order status keeps on changing.

These statuses are set and/or changed by WooCommerce, the payment gateway and the store-owner/administrator/shop manager depending on where the order lies.

Here’s the WooCommerce order status flow:

WooCommerce order status flow

Source –

For example, for physical products, when a customer places an order online, the next WooCommerce order status ‘Pending Payment’ in the sequence will be set by default in WooCommerce.

Next, the payment gateway validates for the customer to complete the payment and changes its status to ‘On hold’. When the payment is successful, it will be marked as ‘Processing’.

After this, WooCommerce won’t do anything else. The shop manager would mark the order as ‘Completed’ or ‘Canceled’ or ‘Refunded’ based on what the end customer does.

Why change the default order status?

Each WooCommerce store is different and has different requirements. Some stores that run lifetime deals and bigger refund window periods will have more orders to refund. While some stores have a no-refunds policy.

For physical stores, the WooCommerce order status list needs to be manually changed to ‘Completed’ after successful payment and delivery. And change it to ‘Refunded’ if the customer returns it and does not want a replacement.

Some stores manually need to mark orders as ‘Completed’ for virtual products, as the default WooCommerce leaves order status as ‘Processing’ after the payment is received.

Additionally, there might be some stores where the default order status & actions manager feature aren’t enough and the store needs a custom order status. For example, stores selling jewelry will have a custom order status like ‘Make to Order’ and ‘Engraving’ before making it ready to ship.

Then there are hundreds and thousands of orders to manage, especially during the Thanksgiving and Christmas season. It’s quite challenging to manage these orders with default WooCommerce. To save time and energy, you need a powerful order status plugin.

That plugin is Smart Manager.

Is Smart Manager the best WooCommerce order status manager plugin?

Smart Manager plugin allows you to view, manage and edit all your orders from one place using an Excel-like sheet editor.

Modify order status, add information to orders, export order data to CSV, filter orders by date and bulk edit statuses…perform hundreds of operations for orders quickly.

Smart Manager orders dashboard

Let’s see more about managing the core WooCommerce order statuses. The below applies to editing other data fields related to orders as well.

First, install and activate the Smart Manager plugin. Once done, go to your WordPress admin panel > Smart Manager. The ‘Products’ dashboard will show up. Select the Orders dashboard from the dropdown.

Create new orders and change order status directly

This is more useful for physical stores. Assume that your client placed an order for a high-end product.

Using Smart Manager, use the Add Row option to add a new order. It will be added to the sheet editor with the ‘Pending Payment’ order status as default. Then change the order status for it directly under the Status column when you receive the payment. This is inline editing.

Use the Add Row button to bulk add new orders and then set the status in bulk (more on that later).

Note – You can also add other order details directly except for Line Items.

Inline edit order statuses

If you want to change the order status from ‘Pending’ to ‘Completed’ or ‘Completed’ to ‘Refunded’, directly use the spreadsheet to change the status at once.

The plugin will provide you with a dropdown to select the order status. No need to go to individual orders and make the edits.

You can also use Smart Manager’s Advanced Search to locate an order among thousands of entries and change its status.

Bulk edit order statuses

This is where Smart Manager shines the most.

You can bulk edit order statuses of hundreds and thousands of orders at once.

Consider you added fifty new orders yesterday and want to set the status from ‘Pending’ to ‘Completed’ for all of them at once as orders were delivered and you received the payment via Cash on Delivery today.

  • Select the orders using search filters. You can set up a filter that contains order status as ‘Pending Payment’ and the date for yesterday.
  • Click on the Bulk Edit button on the Orders dashboard. It will open up a slide-over panel.
  • Enter the conditions Status > set to > Completed and Payment Method > set to > Cash on Delivery.
  • Click on the Update button.
Smart Manager order bulk edit

That’s it.

Be it changing order statuses, shipping details, payment method or order total, you can update them within seconds. 100 or 1000 or 10000+ orders, Smart Manager bulk edit technology takes care of everything.

Note – You can update all orders in the store or all orders in the search result at once.

You can also print PDF invoices for orders in bulk.

Filter orders by status

Smart Manager pulls exact results amongst thousands of orders based on conditions. You can use operators and keywords to search for orders you want without letting random orders pop up.

Apply filters, edit order fields and save!

Click on the Advanced Search toggle on the Orders dashbard. It will open up a slide-over panel.

Now enter your search conditions to perform the export. For example, we want to filter orders by:

  • Order status is ‘Refunded’
  • Date range for three months
  • Order total above $300
filter orders by status

Delete orders

You may sometimes create test orders and want to delete them. It is better to clear them off when not required. You can move them to Trash or delete them permanently.

Duplicate orders

If you want to create orders having similar fields related to shipping, total but different statuses, use the Duplicate option in Smart Manager. Then, make the edits as required.

Export to CSV based on order status

You can export all orders or orders based on filters. For example, export all ‘Canceled’ orders for the month of July this year.

Or use multiple filters – export all orders that were refunded in the last six months and whose order total was above $300.

Learn more about advanced orders export.

Custom views for orders data

Now Orders dashboard involves tons of data. If you want to operate with some limited data fields all the time, you can set up a special dashboard with only those data fields (this is a custom view) and then keep on making edits to that custom view as and when required.

Use the Column filters to choose only specific data columns you want to view.

Here’s how to create custom views

Access privileges

Your shop managers can view Orders data but you also want to restrict them from viewing and managing data related to Products, Users and other post types.

Smart Manager plugin allows you to give access to only specific dashboards to specific users. You can also assign access privileges for custom views.

Notes and email notifications

Just like in WooCommerce, transactional notes will also be added to the order on status change via Smart Manager. And customers will be sent an email when the order status changes. You can also edit ‘customer provided notes’ for the order.

Note – Except for line items(products purchased), you can manage and edit all Orders data fields for now.

Try Smart Manager live demo

Managing and editing WooCommerce custom order statuses

Smart Manager extends its flexibility to manage custom order statuses as well.

Here’s a quick overview with examples:

  • Add new orders directly with custom order statuses. For example, the ‘Engraving’ status for jewelry items.
  • Inline edit custom order status from ‘Engraving’ to ‘Ready to Ship’ by locating the order in the name of Venessa Rodrigues.
  • Bulk edit custom order status from ‘Ready to Ship’ to ‘Completed’ for twenty jewelry items when payment is received and the order is received by the clients.
  • Apply filters to locate orders based on custom order status like ‘Manufacturing’ and order total is above $500.
  • Export all orders for the last month based on the custom status ‘Make to Order’ and containing only these columns – name, email, status, order total.
  • Set up a custom view for Lyon(user role shop manager) and give access only to that view containing custom order statuses.
  • Send an email notification when a custom order changes.

How to autocomplete order status for virtual and downloadable products?

Now, WooCommerce can automatically mark orders as complete only for downloadable products. But for virtual products, it leaves order status as ‘Processing’ after the payment is received.

In such cases, manually marking each order as ‘Completed’ is too time-consuming.

So, you can use Smart Manager to mark these orders as ‘Completed’ using the bulk edit feature quickly.

Another option is to use our WooCommerce Auto Complete Virtual Orders extension to mark these orders as completed automatically. It also works with the WooCommerce Subscriptions plugin.

Going beyond order management

Not just orders, you can also manage products, coupons, subscriptions, bookings, courses…any WordPress post type using Smart Manager.

With Smart Manager, you can:

  • Extend coupon expiry limit for hundreds of coupons issued in bulk.
  • Bulk assign categories and attributes to products.
  • Search for all expired subscriptions and delete them (move to Trash).
  • Cancel all bookings made between a date range.
  • Inline edit a membership based on search filters.
  • Duplicate courses having similar data, make edits and set up new courses quickly.

and a lot more…


Managing core and custom WooCommerce order statuses with Smart Manager will help you stay in full control of your order management.

This will help store owners and their teams save time and focus on more important things to improve their businesses.

So look no beyond Smart Manager and start managing your orders in a smarter way today!

Get Smart Manager plugin


Where is WooCommerce status?
You’ll find it under WooCommerce → Status. Please refer to this doc for more details on how to get it.

How do I create a custom status in WooCommerce?
This will require a small piece of code. Refer to this blog on creating custom order statuses.

What are WooCommerce order notes and how are they used in the order management process?
WooCommerce order notes are messages or comments that can be added to an order by the customer or the store admin during the order processing stage. These provides additional information or instructions related to the order, such as special delivery requests, product customization details, or customer service inquiries.

How can I notify customers of a failed order in WooCommerce and provide them with next steps?
You can notify customers of a WooCommerce failed order in WooCommerce by setting up an email notification or you can also display a notice on the checkout page for customers to see if their order fails. This can be done by adding a snippet of code to your theme’s functions.php file.

How is the WooCommerce order number generated?
The order numbers in WooCommerce can be generated sequential, random or based on the order ID. An automatic reset can be set for the sequential counter on a daily, monthly, or yearly basis. New orders will be assigned custom numbers automatically.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.