WooCommerce e-mails not arriving: what to check

The order comes in, the money is paid, and the customer swears they got nothing. Or it is you who never receives the “new order” notice. On WooCommerce, an e-mail that does not arrive fails in one of three places: WooCommerce never sent it, the site sent it in a way the recipient rejects, or it arrived and went to the junk folder. Check in this order.

The steps

1 See whether the e-mail is on and who it goes to. In WooCommerce settings, under the Emails tab, open the missing e-mail. It must be enabled, and the e-mails meant for the shop need a correct recipient.
2 Look at the sender. On the same tab, the sender options ask for a name and an address. Use an address on your own domain, ideally a mailbox that exists. An address at a free e-mail service, which is not yours, is rejected by many recipients.
3 Ask whether the site sends any e-mail at all. Request a new password for a test user, or submit the contact form. If none arrives, the problem is not WooCommerce’s, it is the whole site’s sending: making WordPress send e-mail properly, with SMTP.
4 Send through SMTP, with a real mailbox. By default WordPress sends through a plain server function that many recipients distrust. An SMTP plugin connects the site to one of your mailboxes and sends as if it were you. It is the best fix, and it covers the whole site.
5 Confirm the domain’s authentication. SPF, DKIM and DMARC tell recipients the e-mail is legitimate. Without them, many go to junk. See SPF, DKIM and DMARC and the panel that audits your domain.
6 Follow the message through the server. In cPanel, the Track Delivery tool in the Email section shows whether the server delivered the e-mail or the recipient refused it, and why.

What each sign points to

What you see Most likely
No e-mail from the site arrives, of any kind The site’s sending is not working or is rejected. Steps 3 to 5.
They reach your mailbox and not the customer’s Missing authentication, or the customer has a stricter service. Look at the tracking.
The customer gets no confirmation but the shop gets its notice A mistyped address, the junk folder, or the sender being refused.
E-mails fail only on orders made by hand WooCommerce only sends when the status changes. On manual orders, use the order actions to resend the e-mail to the customer.
The order stays “pending payment” The “processing” e-mail only goes out when payment is confirmed. The issue is the status, not the e-mail.
Do not put the customer’s address as the sender. It is tempting, so that replies reach you, but the e-mail then claims to come from a domain that did not send it, and it is refused. The sender is the shop; the reply-to is set up separately.
Test with two recipients at different services, not only with yourself. When one receives and the other does not, the problem is authentication. More ideas in why your e-mail is not sending or receiving.

Test-order e-mails still not arriving after all this? Give us the shop address, the time of the test and the destination address.

Open a support ticket

SEE ALSO

WordPress hosting

Professional e-mail

Support Policy

RECOMMENDED PRODUCT

WordPress hosting

One-click install, updates handled, and speed that holds up. from 321,75 MT/mo (3-year plan, with coupon)

See plans
  • 0 Users Found This Useful
Was this answer helpful?