WooCommerce fixes / order stuck on processing

WooCommerce Order Stuck on Processing? Causes & Fix

If your WooCommerce orders sit on Processing and never reach Completed, the money almost certainly arrived — the order is now waiting on you. Here's how to tell intended behaviour from an actual fault, and how to automate the step if you want it gone.

Last updated: 16 Jul 2026 · ~6 min read

Quick answer

For any order containing a physical product, Processing → Completed is a manual step by design. WooCommerce only auto-completes an order when every single item is both Virtual and Downloadable. Everything else stops at Processing and waits for you to fulfil it and mark it Completed. If you want that automated, add an auto-complete rule — but confirm nothing is genuinely broken first.

What "Processing" actually means

Processing means WooCommerce has confirmed the payment and is holding the order for you to fulfil. Stock has been reduced, the customer has had their Order received page and their Processing order email. From their side, the purchase worked. Completed means something different: you have shipped it (or released the downloads) and you are telling the store the job is done.

This is the opposite of an order stuck on Pending payment, where the money was never confirmed and nothing has happened yet. Processing is the healthy state after payment. So before you go hunting for a bug: on a store selling physical goods, a pile of Processing orders is usually just a pile of orders you haven't shipped.

The most common causes (most likely first)

  1. Nothing is broken — physical orders are meant to stop at ProcessingThe order contains at least one shippable product, the gateway shows a successful charge, and the order notes show no errors. WooCommerce never auto-completes these. You mark them Completed when you ship.
  2. It's a mixed cart — one physical item holds the whole order at ProcessingThe order is mostly downloads plus one shippable item (a printed manual, a USB stick). One item that needs processing keeps the entire order on Processing, downloads included.
  3. The product is Virtual but not Downloadable — or Downloadable but not VirtualAuto-complete needs both boxes ticked on the product. A downloadable file on a product that still has a weight and shipping class counts as shippable, so the order stays on Processing. Check Products → Edit → Virtual / Downloadable.
  4. An auto-complete plugin or snippet is installed, but its conditions don't matchIt only fires for certain gateways, certain statuses or certain product types, and this order falls outside them. Typically the rule works for card orders and silently skips bank transfer, cash on delivery or manually created orders.
  5. A delayed auto-complete rule is queued behind a stuck Action SchedulerYou use an "auto-complete after X days" plugin. WooCommerce → Status → Scheduled Actions shows Pending actions with dates in the past — the queue isn't running, so the rule never fires.
  6. The gateway never sent a completion signal, or the payment is authorised but not capturedYour gateway dashboard shows the charge as authorised / uncaptured rather than settled. Any auto-complete rule hanging off payment completion never runs, because the gateway never said the payment finished.

Where to look first

Sure it's design and not a fault?

That's the awkward part of this one — "stuck on Processing" looks identical whether it's WooCommerce behaving correctly or an auto-complete rule quietly failing behind a stalled queue. DiagnosticIQ's free dashboard reads the order's product types, your scheduled actions queue and the gateway's capture state together, so it tells you plainly whether these orders are waiting on you or waiting on something broken. And it keeps watching, so a queue that stalls next month doesn't turn into a fortnight of unshipped orders.

Get the free plugin

Made by Prima Digital — the team behind this guide. Free forever; no card to install.

How to know you fixed it

Verify

Place a test order with a physical product — it should land on Processing and stay there (that's correct), and if you've added an auto-complete rule, an all-downloads test order should reach Completed on its own and fire the Completed order email.

Frequently asked

Was the customer charged?

Yes. Processing means WooCommerce confirmed the payment — check your gateway dashboard to be certain, but this is the normal post-payment state.

Do I have to mark orders Completed by hand?

For physical products, yes — that's the design. Completed is your fulfilment record. Automate it only if that record has no value to you.

Will the customer notice they're all sitting on Processing?

Only if they check My account. They already got the Processing order email. But downloadable products don't release their links until Completed, so downloads buyers will chase you.

Does Processing reduce stock?

Stock is reduced when payment completes, so by the time an order reads Processing the stock is already gone. Marking it Completed changes nothing there.

>_
John O'Keane — Founder, Prima Digital · LinkedIn
Contributions by David Zhang · LinkedIn
I build DiagnosticIQ, the WooCommerce diagnostic plugin, and I've had this exact conversation — "my orders are stuck on Processing" — with store owners whose stores were working perfectly the whole time.