• Skip to primary navigation
  • Skip to main content
Flexible Invoices wordmark logo on a white background
WP Desk

WP Desk

WooCommerce Plugins

Flexible Coupons

Flexible Coupons

Gift cards and tickets

ShopMagic

ShopMagic

E-mail automations

Flexible Invoices

  • Pricing
  • Add-ons
  • Docs
  • Support
  • Blog
  • My Account
  • Ideas
WooCommerce Order Status Manager

Published: 2025-03-21 / Updated: 2026-10-12 / Blog

WooCommerce Order Status Manager

Monika Kwiatkowska

WooCommerce has seven order statuses out of the box: Pending payment, Processing, On hold, Completed, Cancelled, Refunded and Failed, plus a Draft status that the block checkout creates before an order is placed. You change a status by opening the order in WooCommerce > Orders, or several at once from the bulk actions dropdown. Statuses are not just labels: each one decides whether stock is reduced, which email goes out, and, with an invoicing plugin, whether a PDF invoice is issued. This guide covers what each status means, how to change them, which emails they trigger, and how to tie automatic invoicing to a status.

Read about:

  • What are WooCommerce order statuses?
  • Changing the order status in WooCommerce
  • Order Statuses and Emails
  • WooCommerce Order Statuses & PDF Invoices
  • Frequently asked questions

What are WooCommerce order statuses?

Each time a customer completes an order in your store, it appears on the order list in the WooCommerce admin panel with a status attached. That status is what tells you, and the store, what stage the order is at and what should happen next.

This is the full list of WooCommerce order statuses, with what each one actually controls:

Status Slug What it means Stock Default email
Pending payment wc-pending Order received, payment not completed Not reduced None
Failed wc-failed Payment declined or not authorised Not reduced To the admin
Processing wc-processing Payment received, order awaiting fulfilment Reduced To the customer
On hold wc-on-hold Awaiting payment you confirm manually, for example a bank transfer Reduced To the customer
Completed wc-completed Order fulfilled, nothing further required Already reduced To the customer
Cancelled wc-cancelled Cancelled by you or by the customer Restored To the admin
Refunded wc-refunded Money returned to the customer Not restored automatically To the customer
Draft wc-checkout-draft Created by the block checkout before the order is placed Not reduced None

The last one surprises people. The block-based Cart and Checkout creates a draft order as soon as the customer reaches the checkout, which is why abandoned drafts can pile up in the database. WP Desk telemetry from 19,803 WooCommerce stores, collected in August 2026, shows 13.8% of stores using the block cart, so most shops will not see these yet.

Take a look at the graphic diagram:

Diagram with order statuses in WooCommerce

Statuses help you manage orders in the store. You will know which orders require your action. One glance, and you know everything!

List of order statuses

Processing or Completed: which one should you use?

This is the pair that causes the most confusion. Processing means the money arrived and the order is waiting for you to do something, usually pack and ship it. Completed means that work is done.

For digital products, WooCommerce sets Completed automatically after payment, because there is nothing to pack. For physical goods, the order should sit in Processing until it leaves the warehouse. Marking everything Completed at payment feels tidy but destroys the one thing the status list is for: seeing at a glance which orders still need work.

How to change order status in WooCommerce

For online payments the status changes by itself. The order is created as Pending payment, the gateway confirms the charge, and WooCommerce moves it to Processing, or straight to Completed for downloadable products. On hold is not a step in that flow: it is used for payment methods you settle manually, such as bank transfer or cheque, where the store reserves the stock while waiting for the money.

When the customer pays by bank transfer, you change the status by hand:

  1. Go to WooCommerce > Orders.
  2. Click the order number to open it, or the eye icon for the quick preview.
  3. In the order editing screen, pick a new value from the Status dropdown.
  4. Click Update. The status change takes effect, along with any email attached to it.

Change order status in WooCommerce Order Manager

You can also change the status of several orders at once. Follow the steps below:

  1. First, choose WooCommerce > Orders
  2. Then, select the orders to change the status.
  3. From the bulk actions dropdown select order status.
  4. Finally, click Apply.

Bulk actions in WooCommerce

One warning about bulk changes: every status change fires its email. Switching two hundred orders to Completed in one click sends two hundred messages, and there is no undo. Test on a handful first.

You can see 2 additional actions for orders on my screenshot. Learn how to print WooCommerce order details or shipping address labels with a plugin.

A smart tip. By default, the list shows 20 orders. If you want to increase the number of displayed orders, go to Screen Options and change the number of items per page.

Change numbers of item per page in WooCommerce

Can you add your own order status?

Not with core WooCommerce. The seven statuses above are what you get, and the Orders screen is where you manage them. Adding something like “Packed”, “Awaiting supplier” or “Ready for pickup” needs either a snippet registering a custom post status or a dedicated plugin. WooCommerce Order Status Manager is the best known of those, and it is a separate paid extension, not a feature hiding somewhere in the settings.

Before adding one, check whether you need it. Every custom status needs its own rules for emails, for invoicing and for reporting, and a status that nothing reacts to is just a coloured label.

If your store has High Performance Order Storage enabled, orders live in their own database tables rather than among posts, which changes how custom statuses have to be registered. WP Desk telemetry from the same 19,803 stores shows 34.4% with HPOS on, so it is worth confirming before you buy a plugin or paste a snippet.

Order Statuses and Emails

In WooCommerce > Settings > Emails, you can find a list of emails sent after the order has a specific status. If you click manage, you can edit the email.

manage emails in WooComerce

The mapping is fixed in core. New order, Cancelled order and Failed order go to the store admin. Order on-hold, Processing order, Completed order and Refunded order go to the customer. Customer invoice is the one email you send by hand, from the order screen.

You can enable or disable email notifications, change the subject email heading, or add content. Customize some notifications to adjust your purchasing process to your store’s needs.

Edit Email Woocommerce

Too many messages can upset the buyer. Send only notifications that are important and contain new information for the customer. A store that emails on every internal step trains customers to ignore the one message that mattered.

WooCommerce Order Statuses and PDF Invoices

You can also use order statuses to issue and send invoices automatically. Install the Flexible Invoices plugin, which has a free version you can start with.

Flexible Invoices for WooCommerce PRO £59

Add to cart or View Details
WP Desk
Plugins used by 6,000+ shops
Last Updated: 2026-10-21
Works with WooCommerce 10.8 - 11.2

After that, go to Invoice > Settings and choose documents. You decide at which status the PDF invoice is automatically issued and sent to the customer. You can select more than one status, so the invoice can be issued at Processing and a corrective document handled at Refunded.

Which status to pick depends on how you sell. Processing is the usual choice, because the money has arrived. Completed suits stores that invoice on dispatch. What you want to avoid is issuing at Pending payment, which produces invoices for orders that were never paid.

Automatically issue invoice

You can test all the plugin’s functionalities in a free demo.

Summary

Order statuses are the control panel of a WooCommerce store, not decoration. Keep physical orders in Processing until they ship and move them to Completed when they do, so the list still tells you what needs doing. Remember that On hold reserves stock and Cancelled gives it back. Check which emails fire before you change two hundred orders at once. And when you automate invoicing, tie it to a status that means the money arrived.

Frequently asked questions

How many order statuses does WooCommerce have by default?

Seven that you work with daily: Pending payment, Processing, On hold, Completed, Cancelled, Refunded and Failed. There is also a Draft status used internally by the block checkout before an order is placed.

What is the difference between Processing and Completed?

Processing means the payment arrived and the order still needs fulfilling. Completed means it has been fulfilled. Downloadable products jump straight to Completed, because there is nothing to ship.

When does WooCommerce use the On hold status?

For payment methods settled outside the store, such as bank transfer or cheque. The order waits for you to confirm the money while the stock stays reserved.

Why is an order stuck on Pending payment?

The customer reached checkout but the payment never completed, or the gateway failed to send its confirmation back. Check the order notes first: they record what the gateway reported, which separates an abandoned checkout from a broken integration.

Which order statuses send an email to the customer?

On hold, Processing, Completed and Refunded. New order, Cancelled and Failed go to the store admin instead. The Customer invoice email is sent manually from the order screen.

Can I create a custom order status in WooCommerce?

Not in core. It requires a snippet or a plugin such as WooCommerce Order Status Manager, which is a separate paid extension. If your store uses High Performance Order Storage, confirm the method supports it.

Does changing a status in bulk send emails?

Yes. Each order processes its status change individually, including the email attached to it, and there is no way to undo a batch. Test on a few orders before running it on hundreds.

Can an invoice be issued automatically when the status changes?

Yes, with an invoicing plugin that listens for status changes. You pick which statuses trigger the document, and the PDF is issued and emailed without anyone opening the order.

WooCommerce order management in your store

If you have more questions or want to dispel doubts, email us!

About Monika Kwiatkowska

  • Terms & Conditions
  • Privacy Policy
  • Support Policy
  • Refund Policy

© 2026 A WP Desk WP Desk Invoicing

Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
  • Manage options
  • Manage services
  • Manage {vendor_count} vendors
  • Read more about these purposes
View preferences
  • {title}
  • {title}
  • {title}