The life-cycle of a WooCommerce order is a journey. It is created on your customer’s device, travels all the way to your store’s web server, then sometimes travels to dispatch/fulfilment (or another 3rd party), and finally arrives back to your customer. Understating this life-cycle is imperative in ensuring a smooth purchasing experience for your customers.
WooCommerce has a number of built-in core order statuses to help you keep track of where in the life-cycle each order is. And while this is sufficient for most stores, some stores will find that their order lifecycle isn't accurately captured by WooCommerce's default order statuses. There might be some stages in either your processing, manufacturing, and fulfilment that are unique to your store.
If you find yourself in this boat, it's all good; the internet has already solved this problem for you. With one plugin, you can create your own WooCommerce custom order statuses to better model your WooCommerce order lifecycle. I'll also show you a great solution to help manage, segment, and report on orders with both default and custom order statuses.
WooCommerce provides a number of core order statuses so that both you, your customer, and any other 3rd parties can keep track of exactly how far along the WooCommerce order life-cycle an order is.
WooCommerce’s core statuses are:
Pending payment – Order received has been received but no payment initiated.
Failed – Payment failed or was declined.
Processing – Payment received and stock has been reduced. Order is awaiting fulfilment.
Completed – Order fulfilled and complete – requires no further action.
On-Hold – Awaiting payment – stock is reduced, but payment still needs to be confirmed.
Cancelled – Cancelled by an admin or the customer – stock is increased.
Refunded – Refunded by an admin – no further action required.
While these core statuses are suitable for many businesses, this cookie-cutter system may not work for everyone!
WooCommerce customer order statuses allow stores to better represent the lifecycle of their product/services.
So for example, Imagine a business that sells jewellery and provides custom engraving. They could create a custom status called ‘out to engraving’. Another example is a store that custom manufactures each product. They could create a custom status called ‘being manufactured’
There are a few ways you can create custom order statuses:
Custom Order Status for WooCommerce (free-plugin) - This will give you basic custom order status functionality. Purchasing the full version is required if you want advanced functionality such as sending custom emails when the order status changes.
WooCommerce Order Status Manager (paid extension) - Gives you full functionality out of the box. We recommend using this as it’s the ‘official’ WooCommerce extension.
Custom Code (free but only for advanced WP users) - If you are a developer, or have a developer on your team, another option is to implement custom code. Have a read of this walkthrough to learn how to integrate the code into your WP theme.
While the WooCommerce Order Status Manager extension allows you to view and action orders with both core and custom statuses, additional functionality such as reporting, segmenting and advanced automated emails are very limited.
Let’s take a quick look at what it can help you accomplish:
You can add or edit custom statuses and configure other settings such as colour and icon:
Through your WooCommerce admin, you can pull up all your orders, and then filter by clicking on the core or custom order status from the top:
It is not possible to filter by multiple statuses or conditions. For example, filtering for all orders with either the custom status of out to engraving or being manufactured. Or filtering for all statuses that are out to engraving and have an order value of over $500.
Sending emails when an order is set to a custom status
Just as you can send emails to customers through WooCommerce when an order is updated to core status like processing or failed, you can similarly create these emails for custom statuses:
You can’t however, create advanced automated emails that target a customer when they meet a specific order status condition. For example, perhaps when an order has the status of out to engraving and was created more than 2 days ago, you want to send an automated email to the customer reassuring them all is ok and that the item will be shipped soon. This isn’t possible with this extension.
This is where Metorik (our app) can come in and really help you take advantage of WooCommerce custom order statuses.
Metorik takes a more flexible and creative approach to WooCommerce custom order statuses, allowing you to use them to better understand your data, improve your customer experience and brand, and ultimately make more sales.
Let’s take a quick look at what Metorik can do:
Metorik automatically syncs with your WooCommerce in real-time — so all your orders will have the most recent and up to date-order status.
From your store settings you can easily view all your order statuses:
And edit the status name, icon, and colour:
You can quickly segment orders based on a core or custom shipping status (like in WooCommerce):
However, with Metorik you can also segment by multiple statuses. For example, all orders with the status, out for engraving, being manufactured or processing:
You can also get a bit more advanced and add an additional filter, such as all orders that have the order status of out to engraving and have a total order value greater than $500:
Metorik allows you to easily see analytics for both core and custom order statuses. From the orders report, you can view a table breakdown of all your order statuses and their respective amount of orders, net sales, gross sales, average net sales, and average gross sales. You can export this data by hitting the export button in the top right corner:
You can also exclude order statuses from reports. This is useful if you have a custom order status that you don’t want to be included in your report totals:
Remember when we wanted to send an automated email to our customers reassuring them all is ok with their order, if their order has the status of out to engraving for more than 2 days.
To get this done, head to Engage and create a new orders automation:
Then create the rules that will trigger the automation. In this case order status is in out to engraving and order updated over 2 days ago:
Finally, draft the email that will be sent. I’m using the billing address first name variable to personalise the email:
Now whenever a customer meets that condition, an email will automatically be sent to them.
WooCommerce custom order statuses allow you to keep track of your orders with greater precision. This will result in a significantly better experience for you, your team, and your customers. In conjunction with Metorik, you can further optimise this experience by:
Instantly importing and editing core and custom order statuses.
Segmenting by multiple order statuses and other filters.
Viewing reports to see key metrics for both core and custom order statuses.
Excluding custom and core order statuses from reports.
Sending advanced automated emails based on core and custom order status conditions.