Double orders in WooCommerce

In some cases, you may encounter duplicate WooCommerce orders that appear to be for the same purchase. Typically, one order will have the status Pending payment or Cancelled. While only one order is actually created in the payment provider’s merchant portal – and the customer has not been charged twice – this behavior can still cause confusion or frustration for the merchant.

When does this happen?

When a customer initiates checkout in WooCommerce, a Pending payment order is immediately created.

If the customer does not complete the checkout – either by abandoning the payment, closing the browser, or navigating away – that order remains in Pending payment status.

If the customer makes changes to their cart or shipping method, or later returns to finalize the purchase but their session has expired, WooCommerce may create a new order instead of reusing the previous one.

This can also happen if the cart and checkout pages are cached. These are dynamic pages, and caching them prevents WooCommerce from handling session-specific data properly. This may, among other things, result in multiple orders being created unintentionally.

You can read more about why you should not cache your cart and checkout pages.

Why does this happen?

This behavior is entirely managed by WooCommerce – not by the payment gateway or any third-party plugin. Depending on how the session changes and what WooCommerce detects (e.g., cart changes, shipping updates), it may:

  • Update the existing pending order, or
  • Generate a brand new order.

In these cases, the first order typically remains in Pending payment or becomes Cancelled, while the second one can proceed to Processing or Completed after a successful payment.

Automatically cancel pending payment orders

WooCommerce includes a setting to automatically cancel pending orders after a specified time, releasing any reserved stock. You can configure this under WooCommerce → Settings → Products → Inventory → Hold Stock (minutes)

For more details, see the article Pending payment orders and held stock.

Contacting Support

If you are suddenly experiencing an unusually high number of double orders, or many orders stuck in Pending payment or Cancelled status, and you have already tried disabling cache on the cart and checkout pages, please contact our support team.

We can investigate to determine whether this is expected WooCommerce behavior or if there is an underlying issue that needs to be addressed.