When a WooCommerce store stops sending email, two people notice late. The customer waits for a confirmation that never comes. The store owner does not see the new order notice and ships nothing. Start by working out whether WooCommerce sent the email at all.
1. Check the order status
WooCommerce sends its emails when an order changes status. The new order notice and the customer’s processing email go out when the order moves to Processing or On hold. An order that stays at Pending payment sends nothing, because as far as WooCommerce knows the customer has not paid.
Open WooCommerce, Orders, and look at the affected orders. If they are stuck at Pending payment while the money shows up in the payment provider’s dashboard, the email is not the problem. The payment gateway is not telling the store that the payment succeeded. Check the gateway’s webhook settings and its log for failed calls to your site.
2. Check that each email is enabled
Go to WooCommerce, Settings, Emails. Each email has its own row. Open New order, Processing order and Completed order, and confirm that each is enabled.
For New order, read the recipient field. It defaults to the site’s admin address. If that belongs to the developer who built the store, the owner has never received an order notice.
3. Check the sender address
On the same screen, under the sender options, read the From address. It must be on the store’s own domain. A From address at Gmail or on a different domain makes receiving servers reject the message, because the store’s server is not allowed to send for that domain.
4. Send through SMTP
WooCommerce hands its email to WordPress, and WordPress by default uses the web server’s mail function. Mail sent that way is unsigned, and shared hosts often limit how many messages an hour a site can send. A store with steady orders reaches that limit sooner than a site with one contact form. Install an SMTP plugin and connect it to a mail service built for transactional email. Send a test email from the plugin to confirm the connection.
5. Check the domain’s DNS records
If the SMTP test arrives and order emails do not, compare the From addresses. If mail leaves the store and customers still do not get it, run the domain through the SPF, DKIM and DMARC checker. Customers use every mailbox provider there is, so a store feels an authentication problem faster than a site that only emails its owner.
6. Look at the logs
A mail logging plugin shows whether WordPress tried to send each message and what the server answered. WooCommerce, Status, Logs shows fatal errors, including ones thrown by a plugin that customizes email templates. A broken template override can stop one email type while the others keep working.
7. Place a real test order
Settings can look right and the email can still fail. Place an order with a payment method you can complete without cost, such as a 100% coupon or a manual method enabled for administrators only. Use a customer address at a mailbox provider different from the store’s own. Confirm that both the customer email and the new order notice arrive.
It works today
Order emails break again after gateway updates, host moves, expired SMTP credentials and DNS edits, and the checkout page keeps taking orders. Causes that apply to any WordPress email are in WordPress not sending emails: 7 causes.
Formitor runs checkout monitoring for WooCommerce and SureCart. It places a synthetic test order on a schedule and verifies the checkout flow, including the confirmation emails. See how to set it up. The free plan covers 2 sites.