WooCommerce orders suddenly stopped? Work through these 7 checks

Orders were coming in, and now they aren't. Before you assume the worst, most sudden stops trace back to one of a handful of causes. Work through these seven in order. The first few take a minute each and rule out the scary explanations fast.

You don't need any of our tools to fix this. Everything below is something you can do yourself in wp-admin or over SSH.

1. Test checkout yourself, as a guest

Start here every time. Open your store in a private or incognito window so you're not logged in, add a product to the cart, and go all the way through checkout with a real card or a live PayPal login. Don't skip the payment step. A store can look perfectly fine right up until the moment money is supposed to move.

What good looks like: the order completes, you land on the thank-you page, and a new row appears under WooCommerce → Orders.

What bad looks like: the Place Order button spins forever, the page reloads with a red notice, or you reach a blank screen. If checkout fails here, that's your answer and you can stop hunting elsewhere. Note the exact error text, because the next checks depend on it.

2. Check your payment gateway's status page

If checkout fails right at payment, the problem may not be your store at all. Payment providers have outages, and when they do, every store using them stops taking orders at once.

Check the official status pages directly:

What good looks like: a green "all systems operational" banner. What bad looks like: a yellow or red incident notice mentioning payments, the API, or checkout. If there's an active incident, there's nothing to fix on your end. Watch the status page, and consider posting a short note to customers. Also open your gateway dashboard (the Stripe or PayPal site itself) and confirm your account isn't flagged, restricted, or waiting on verification, which stops payouts and sometimes charges too.

3. Look for a plugin or theme update in the last 72 hours

A quiet auto-update is the single most common cause of a store that broke "for no reason." An update to a payment plugin, WooCommerce itself, or your theme can change checkout behavior overnight.

Go to Dashboard → Updates, then Plugins → Installed Plugins. If you have an activity log plugin, check it. To see recent file changes over SSH:

That lists plugin files changed in the last three days. If something updated right before orders stopped, roll it back. The cleanest way is the free WP Rollback plugin, which adds a "Rollback" link next to each plugin so you can return to the previous version in a couple of clicks. If you can't reach wp-admin, deactivate the suspect plugin by renaming its folder over SFTP or SSH:

Then retest checkout. Rename it back once you've confirmed whether it was the cause.

4. Check that outgoing email is actually sending

This one fools people constantly. When your store stops sending email, new orders still get placed and paid for, but you stop getting the "New order" notice and the customer stops getting a receipt. From where you sit, it looks exactly like orders stopped. They didn't. You just went blind to them.

Test it: install a mail-log plugin such as WP Mail Logging, or trigger a password reset for a test account and see if the email arrives. Better, check WooCommerce → Orders directly against your payment gateway dashboard. If the gateway shows charges that your order list and inbox don't, your email or your order sync is the real problem, not sales.

The fix: route your store's mail through a proper sending service (an SMTP plugin pointed at a provider like Postmark, SendGrid, or your host's transactional mail) instead of relying on raw PHP mail, which hosts increasingly block.

5. Check your SSL certificate hasn't expired

An expired certificate throws a full-page browser warning before a customer ever sees your cart, and many payment gateways refuse to talk to a site whose certificate is invalid. Orders drop to zero and stay there.

In any browser, click the padlock in the address bar and view the certificate's expiry date. Or over SSH:

What good looks like: a notAfter date comfortably in the future. What bad looks like: a date in the past, or a browser warning about "not secure." Most hosts auto-renew Let's Encrypt certificates, but auto-renewal fails silently more often than you'd think. If it's expired, renew it from your host panel or ask your host to reissue it today.

6. Check the server isn't out of disk space

A full disk breaks a store in strange, inconsistent ways. Sessions can't be written, so carts empty themselves. Uploads fail. The database can't write, so an order gets taken but never saved. It rarely announces itself as "disk full."

Over SSH, run:

What good looks like: your main partition well under 90 percent. What bad looks like: a partition at 100 percent or close to it. If it's full, clear space fast: old backups, large logs in wp-content, and the debug.log file are common culprits. Then check what's filling it so it doesn't refill in a day. Many hosts also cap your database size separately, so check that quota in your host panel too.

7. Check WP-Cron hasn't stalled

WooCommerce leans on WordPress's scheduler for a lot of order plumbing: moving orders from pending to processing, releasing held stock, retrying subscription payments, and firing delayed emails. WP-Cron only runs when your site gets traffic, so a low-traffic store or a caching layer that blocks the cron request can leave scheduled tasks stuck. Orders then sit in the wrong status and look stalled.

Check WooCommerce → Status → Scheduled Actions (Action Scheduler). Look for a long queue of tasks with a "Pending" date well in the past, or a pile marked "Failed." Over WP-CLI:

The reliable fix: turn off the pseudo-cron and run it from the server on a fixed schedule. Add define('DISABLE_WP_CRON', true); to wp-config.php, then set a real cron job to hit wp-cron.php every five minutes. Your host's control panel has a cron section for exactly this.

If you've worked through all seven

Most sudden stops are one of these. If checkout completes cleanly in your own test, the gateway is green, nothing updated recently, mail is flowing, SSL is valid, the disk has room, and cron is current, then what you're seeing may be a normal quiet stretch rather than a break. Compare against the same day and hour last week before you assume something's wrong. If it still feels off, your host's support can look at server error logs you can't see from wp-admin.

Two quiet tools, if you want them

Want a fast read on whether checkout is loading right now? Run the free checkout checker, no signup. And if you'd rather find out the next time this happens without testing by hand, Store Guardian is free in beta and emails you within minutes when orders stop.

More guides

WooCommerce checkout not working: find the cause in 15 minutes

How to get alerted the minute a WooCommerce payment fails

Stop failed WooCommerce orders from cluttering your dashboard

WooCommerce order emails not sending: fix it in 20 minutes

WooCommerce card testing attack: stop it and clean up