Q: A client’s site running WooCommerce does not send their customer email notifications after an order has been placed or when the order changes status. The backend runs just fine and clients receive email notification that an order has been placed. The customer should get a notification as well when their order status changes but they also do not receive anything. WordPress and WooCommerce plugin versions are up-to-date.
A: Likely the mail is being sent — just not being received. WordPress’ built-in emails can look an awful lot like spam to most junk mail filters, especially if it’s not also the mail server and/or the address [email protected] doesn’t exist.
First, let’s verify the issue:
- Install an email logger plugin to verify that the emails are actually being sent (if not, insure they are by adjusting the WooCommerce email settings).
- Install a SMTP plugin to route traffic through your SMTP server (if it is not also your webserver). This also ensures mail is being sent from an email account that exists on your server (in case the spam filter checks that).
- The better (but more complicated) solution is to use a 3rd party transactional email service like MailGun or SendGrid to improve deliverability. Mandrill now has a very limited free/trial tier, so it doesn’t make sense for most sites.
wp_mail
).