WooCommerce order status provides crucial information about the progress of an order from the time it gets placed to when it’s delivered.
These order statuses are paramount in streamlining business operations, enhancing customer experience and monitoring revenue.
The default WooCommerce has multiple order statuses that help store owners organize their fulfillment process.
However, every business has its own way of handling their orders.
That’s why many companies look to extend WooCommerce’s default functionality to manage their order statuses as per their requirements.
In this post, we’ll look at the default WooCommerce order status and how the orders are processed.
Further, we’ll expand on managing orders and creating custom order statuses in WooCommerce to carry out business operations efficiently.
Table of Contents
WooCommerce order status refers to distinct stages through which an order gets processed within WooCommerce.
It represents the current stage of an order that provides information about its processing and fulfillment status.
These statuses convey the progress of an order from the moment it gets placed to the time it gets delivered to the customer.
Here’s a quick snapshot of the order statuses in a WooCommerce store:
The WooCommerce order statuses help both store owners and customers by:
These statuses are quite crucial in managing orders, ensuring smooth business operations, and enhancing customer satisfaction.
WooCommerce has the default order statuses in its order fulfillment process. Here is the complete WooCommerce order status list below:
To clarify further, we’ll help you understand the order processing status for different products in a WooCommerce store.
Order statuses in WooCommerce play an important role in managing the e-commerce workflow.
Let’s look at their importance:
Overall, WooCommerce order status is a powerful tool that enhances communication, streamlines operations, and provides valuable insights for your business.
WooCommerce order status works as a system to track and manage the lifecycle of an order from the initial point when it’s placed until it’s completed.
Here’s how it works:
In addition to that, the order status goes through different stages for different types of products to ensure fulfillment.
Simply put, physical products are processed differently than digital products in an eCommerce store.
Let’s understand the WooCommerce order status for different products.
Physical products undergo the journey of order processing, shipping, and delivery. Therefore, it takes some time to process the order and change the order status.
Once the payment is successful, the order status changes to ‘Processing’. After the order is delivered to the customer, it changes to ‘Completed’.
Virtual products are digital, non-tangible items such as memberships, services, warranties, subscriptions, etc.
You can access these virtual items with a username and password or a website URL hosted on a server.
Upon successful order placement, the order status goes to ‘Processing’.
Since the virtual products cannot be delivered to you, the order status will still show in processing.
However, you can use a plugin called Autocomplete WooCommerce Orders that allows you to complete the order status for virtual products.
We’ll discuss the autoprocessing of order status later in this post.
Virtual + Downloadable products are digital products that can be downloaded, such as ebooks, music files, PDFs, etc. These can be downloaded straight to your device.
Once you’ve made the successful purchase, the order status instantly changes to ‘Completed’.
We already know a lot about the default order statuses in WooCommerce. These help track the progress of orders placed in your store.
However, the default options may not be suitable for everyone’s needs. What if you want your customers updated about their orders more granularly?
That’s where the ability to add WooCommerce custom order status comes in.
Adding custom order statuses in WooCommerce helps store owners manage their orders better and provide personalized experiences to their customers.
With custom order status, store owners can create their own order statuses based on their specific needs.
You can add WooCommerce custom order status in two ways:
Let’s look at both of these processes.
First, you must install a free WordPress plugin called WPCode Insert Headers and Footers + Custom Code Snippets.
Next, go to ‘Snippets’ and click on the ‘Add New’ button.
Add the following snippet code and select the option below to run it everywhere on the website.
Once done, hit ‘Update’ and activate the snippet.
Orders in WooCommerce have a special ‘post_status’ value attached to them on the wp_posts table in the database, like any other posts.
Therefore, we’ll use the register_post_status() inbuilt function to include our custom order status.
This is the code you need to copy and paste on the code snippet:
// Register new status
function register_order_shipped_order_status() {
register_post_status( 'wc-order-shipped', array(
'label' => 'Order Shipped',
'public' => true,
'show_in_admin_status_list' => true,
'show_in_admin_all_list' => true,
'exclude_from_search' => false,
'label_count' => _n_noop( 'Order Shipped (%s)', 'Order Shipped (%s)' )
) );
}
// Add custom status to order status list
function add_order_shipped_to_order_statuses( $order_statuses ) {
$new_order_statuses = array();
foreach ( $order_statuses as $key => $status ) {
$new_order_statuses[ $key ] = $status;
if ( 'wc-on-hold' === $key ) {
$new_order_statuses['wc-order-shipped'] = 'Order Shipped';
}
}
return $new_order_statuses;
}
add_action( 'init', 'register_order_shipped_order_status' );
add_filter( 'wc_order_statuses', 'add_order_shipped_to_order_statuses' );
Well done! This is how you can create a custom WooCommerce order status using a code snippet.
The easiest way to create a custom order status in WooCommerce is by installing a WordPress plugin like Custom Order Status Manager for WooCommerce.
This plugin lets you create, edit and remove custom order statuses to manage your WooCommerce orders better.
Make sure to install and activate this plugin on your WordPress dashboard.
Once done, go to WooCommerce ⇨ Order Status and click on ‘Add New’.
Fill in the details related to your new custom order status:
Once done, hit the ‘Publish’ button.
As you can see, the new custom order status has successfully been created in your WooCommerce store.
From this dashboard, you can edit this custom status, view, edit the email template, or even delete your custom order status.
You can even take bulk actions if you have set up multiple order statuses.
This plugin perfectly handles and helps you efficiently manage all your custom WooCommerce order statuses.
WooCommerce uses different factors to determine the status of an order. The order status and handling of payment failure may not be as straightforward as expected.
Depending on whether or not the payment was successful, your payment methods also impact the order statuses.
Here are the order statuses for different payment methods used to make transactions in WooCommerce:
Upon successful payment, the order status goes to ‘Processing’. The orders are automatically completed once they are processed and fulfilled.
If the payment fails, the status goes to ‘Pending’ but ultimately changes to ‘Failed’ upon payment failure confirmation.
In the case of check payments, direct bank transfers and cash on deliveries, the order status will not auto-complete. But the stock of those products will reduce.
It is because the transactions here are dependent on offline payment methods. Therefore, in such cases, product access doesn’t happen until the payment is successfully received.
Here, the order status remains on ‘Processing’. The store owner or admin has to verify and manually change the order status to ‘Completed’ or ‘Failed’ in case of successful or unsuccessful transactions.
By default, WooCommerce automatically completes the paid orders for only virtual + downloadable products after a successful purchase.
However, for only virtual products, the order status goes to ‘Processing’, which shouldn’t be the case.
WooCommerce should also mark the order as ‘Completed’ for digital (virtual) products.
But you can alter this behavior in your store.
You can change the WooCommerce order status automatically (programmatically) to ensure it’s convenient for store owners and customers.
To automatically change WooCommerce order status, you must install a WordPress plugin called Autocomplete WooCommerce Orders by QuadLayers.
Once you have the plugin, you can set the autocomplete configurations from the WooCommerce settings.
To do that, go to WooCommerce ⇨ Settings ⇨ Autocomplete Orders tab.
Click on the Mode options and select ‘Paid orders of virtual products only’.
You also get different options to configure from here that let you autocomplete your WooCommerce orders.
Once done, hit the ‘Save Changes’ button.
When a user successfully places a virtual order, the order status will automatically be moved to ‘Completed’.
Please note that you can configure autocomplete orders for all orders as well.
Now, if you try a test purchase of your virtual product in your store, go from the product page to checkout order page and test purchase it.
As you can see, we can see the WooCommerce thank you page here, signifying our purchase is complete.
Now, if you go to WooCommerce orders, you’ll be able to see the order status - Completed.
That means this plugin works!
Alternatively, you can use other WordPress plugins to auto-complete orders as well. Here are some recommendations:
These WooCommerce order status manager plugins effectively let you streamline the order fulfillment process in your business.
Order status email notifications are crucial in the WooCommerce order management system, serving as an essential communication channel between merchants and customers.
Although WooCommerce uses default emails for some order statuses, you cannot customize them based on your brand.
The best way to customize your emails is with FunnelKit Automations, the most powerful marketing broadcast and automation CRM ever made.
You can set up automated sequences, send email broadcasts or SMS texts, track orders and conversions for each campaign, and more.
Suppose you have to send an email about the order being packed and awaiting shipment.
All you have to do is go to create a new automation in FunnelKit Automations. Select ‘Order Status Changed’ event and configure them:
Now select the ‘Send Email’ action below the event.
One of the coolest thing about FunnelKit Automations is that you get access to pre-designed email templates.
You can import these templates and customize your emails the way you want.
Not only that, FunnelKit Automations integrates with various plugins such as shipping plugins, subscription plugins, etc.
This way, you’ll be able to send shipment tracking emails, subscription emails, new user registration emails, and more.
Improving the customer experience in the order status process is crucial for WooCommerce stores.
Here are some effective best practices:
1. Clear and timely communication
Update order statuses promptly and ensure that every status change triggers a clear, informative notification to the customer.
This way, you keep them in the loop and reduce anxiety about their purchase.
FunnelKit Automations offers the convenience of sending automated order notification emails for each order status change.
2. Use descriptive order status labels
Take on status labels that are easy for customers to understand.
Instead of technical terms, use clear order status descriptions such as “Order Received”, “Preparing for Shipment”, “Out for Delivery”, etc.
These user-friendly labels help customers quickly understand the whereabouts of their orders without having to decipher complex terminologies.
3. Offer tracking information
Integrate your WooCommerce store with shipping carriers to automatically update orders with tracking numbers.
FunnelKit Automations integrates with different shipment tracking plugins such as WooCommerce Shipment Tracking, WC Jetpack Shipment, Advanced Shipment Tracking for WooCommerce, and more.
Once a package is shipped and a tracking number is generated, update the order status to include this information or email customers about it.
Consider embedding tracking information directly into your site so customers can track their packages without leaving your store.
4. Personalize status updates
Use merge tags in your WooCommerce email templates to automatically include the customer’s name, order number, and specific item details in your email notifications.
FunnelKit Automations provides dynamic merge tags that let you personalize your emails with relevant information.
The personal touch makes customers feel valued and provides relevant information without them having to look it up.
5. Optimize for mobile
With over 1.7 billion people using their mobile phones to open and read their emails, it’s crucial that your order status emails are mobile-responsive.
Use a single-column layout, large, readable fonts, and buttons that are easy to tap on small screens.
Ensure that your order tracking page is fully functional and easy to navigate on mobile devices.
Our experts have answered some common user questions about WooCommerce order status in this section.
1. How to add custom order status in WooCommerce?
You can add custom order statuses in WooCommerce using a plugin or a custom code with the ‘register_custom_order_status’ action to your theme’s functions.php file. We have talked about it in this post in detail.
2. How to change default order status in WooCommerce?
You can change the default order status in WooCommerce using a plugin or custom code with the ‘change_default_order_status’ filter.
In addition, you can change the default status according to the payment method. For example, you can change the default status when the payment method is cash on delivery or bank transfer.
3. How do I get all the order status in WooCommerce?
You can get all the order status in WooCommerce by navigating to WooCommerce ⇨ Orders section.
You’ll see all the orders placed in your WooCommerce store and their respective status there.
We hope this post has provided a detailed understanding of WooCommerce order status, which will help you successfully manage your store.
By grasping the significance of each status, you can ensure a seamless experience for you and your customers.
You can even add custom order status in WooCommerce to help streamline the order management and fulfillment process per your business requirements.
Further, using WordPress plugins, you can manage and automatically change the order status for different products.
This way, you can carry out your business operations and enhance customer satisfaction efficiently.
With FunnelKit Automations, you can directly send email notifications for various order status changes.