Order emails are not arriving

Missing order emails are among the most damaging faults a shop can have, because neither you nor the customer knows an order has happened. Work through this in order.

1. Is WooCommerce trying to send them?

In WooCommerce settings, check the Emails tab. Confirm the notification is enabled, and that the recipient address for admin notifications is correct – it is easy to leave it as an address nobody reads.

2. Are they being sent but filtered?

Check the spam folder first. Then check the sending address: mail sent "from" a customer's own address will fail authentication and is very likely to be filtered or rejected. Send from your own domain and use Reply-To for the customer.

3. Fix the sending method

WordPress's default mail function authenticates poorly. Use an SMTP plugin sending through a real mailbox on your domain – see WordPress cannot send email. On a shop this is not optional; order confirmations that land in spam cost you money and generate support calls.

4. Check the background queue

WooCommerce sends some emails through its scheduled task system rather than immediately. If that queue is stalled, emails simply never go. See Action Scheduler: why background jobs stop running. This is a common cause and it is invisible unless you look.

5. Prove it end to end

Place a real test order and watch what happens. A test email from a plugin only proves the mail path; it does not prove WooCommerce is triggering the notification.

Keep a record

A mail logging plugin records every message the site attempts to send. When a customer says they received nothing, that log answers in seconds whether it was sent, and is worth having in place before you need it.

  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

WooCommerce on shared hosting: what to expect

WooCommerce runs perfectly well on shared hosting for the great majority of shops. It is,...

Caching WooCommerce correctly, and what must never be cached

Caching is the biggest performance win available to a shop, and the fastest way to break one. The...

Action Scheduler: why background jobs stop running

WooCommerce queues work to run in the background – sending some emails, syncing stock,...

Orders stuck on pending payment

An order sitting at Pending Payment means WooCommerce created it and never heard that the payment...

Preparing your shop for a sale or a traffic spike

A planned spike – a sale, a newsletter, a product launch – is the one kind of traffic...