Troubleshooting Common Post SMTP and WooCommerce Email Issues
Content
If you run a WooCommerce store, reliable email delivery is crucial for order confirmations, notifications, and customer communication. The Post SMTP plugin is a powerful tool to ensure emails are sent securely via SMTP. However, integrating it with WooCommerce can sometimes lead to specific challenges. This guide covers the most common issues and their solutions, based on community reports.
1. "Incorrect Authentication Data" or "Invalid login or password"
The Problem: Emails fail to send, and the error log shows authentication errors like "incorrect authentication data" or "5.7.0 Invalid login or password."
Why It Happens: This typically means the credentials (username/password or OAuth tokens) used to connect to your SMTP service (like Gmail, Office 365, etc.) are incorrect, outdated, or have been revoked.
How to Fix It:
- Go to your Post SMTP Settings > Account.
- Re-enter your SMTP password or API keys carefully.
- If using OAuth (e.g., for Gmail), you will likely need to re-authenticate by clicking the "Grant Permission" button to generate new tokens.
- Double-check that your SMTP service provider has not disabled the account or app due to suspicious activity.
2. "This email has empty body" (WooCommerce Specific Emails)
The Problem: Certain WooCommerce emails, like order status updates or notes, fail with an "empty body" error, while other emails send fine.
Why It Happens: This is often a conflict between Post SMTP and how WooCommerce generates the HTML for certain email templates. It can also be related to the "From Email" address setting.
How to Fix It:
- Navigate to Post SMTP Settings > Message.
- Find the option "Prevent plugins and themes from changing this" next to the "From Email Address" field and ensure it is unchecked. This allows WooCommerce to manage the "From" address for its transactional emails.
- Ensure the "From Email" address in your WooCommerce email settings matches the address you use to authenticate with your SMTP service. A mismatch can cause the email body to be rejected.
3. Emails Not Logged or Sent (Silent Failure)
The Problem: Emails, particularly for new WooCommerce orders, are not being sent and do not even appear in the Post SMTP log, making them hard to trace.
Why It Happens: This can be caused by a fatal PHP error during the email sending process that halts execution before the log entry is made. It can also occur if another plugin is interfering with the wp_mail function.
How to Fix It:
- Check your WordPress debug.log file for any PHP errors around the time the emails should have been sent. You may need to enable WordPress debugging.
- Run a conflict test by temporarily disabling all other plugins except WooCommerce and Post SMTP. If the emails send, reactivate your plugins one by one to identify the culprit.
- In Post SMTP Settings > Advanced, try switching the "Mailer Type" to PostSMTP instead of the default PHPMailer (or vice-versa) to see if one is more stable on your server.
4. Emails Marked as Spam or "Message Rejected"
The Problem: Emails are being delivered to recipients' spam folders or are rejected by the mail server with errors like "550 5.7.0 [D1] Message rejected due to content policy."
Why It Happens: Email providers (like Outlook/Hotmail) have strict spam filters. Rejections can happen if your email's content triggers spam rules, or more commonly, if your email authentication (SPF, DKIM, DMARC) is not properly set up.
How to Fix It:
- Use the Post SMTP extension to set up DKIM signing for your domain. This is a critical step for proving your emails are legitimate.
- Ensure your domain's DNS records include correct SPF and DMARC records that authorize your SMTP service to send mail on your behalf.
- Avoid spam-triggering language in your WooCommerce email templates (e.g., excessive exclamation points, words like "FREE").
5. Performance Issues: Timeouts and High CPU Usage
The Problem: The checkout process times out when customers order many items, or the site becomes slow during high order volume due to email sending.
Why It Happens: Sending emails, especially with large attachments or through a slow SMTP connection, is a synchronous process. If it takes too long, it can delay the page from finishing loading.
How to Fix It:
- Consider configuring an external cron job to handle the email queue, which moves the sending process out of the immediate page load. Plugins like WP Crontrol can help manage this.
- If using Gmail, try switching to a different SMTP provider like Mailgun or SendGrid, which may offer better performance and higher sending limits.
- Be cautious when attaching large files to WooCommerce emails, as this significantly increases processing time.
Getting Further Help
If you're still stuck, the community can help more effectively if you provide specific information. Before asking for help, please gather your Post SMTP Diagnostic Test report:
- Go to Post SMTP > Dashboard.
- In the "Troubleshooting" section, click Diagnostic Test.
- Copy the entire report and include it in your support request on independent forums. This report provides vital details about your server configuration and mailer settings.
Remember, the 'Post SMTP – WP SMTP Plugin with Email Logs and Mobile App for Failure Notifications – Gmail SMTP, Office 365, Brevo, Mailgun, Amazon SES and more' team does not monitor independent troubleshooting sites, but the community here is often able to help diagnose problems with this information.
Related Support Threads Support
-
Fatal error on WooCommerce checkouthttps://wordpress.org/support/topic/fatal-error-on-woocommerce-checkout/
-
backorder email notificationhttps://wordpress.org/support/topic/backorder-email-notification/
-
woocommerce processing email won’t sendhttps://wordpress.org/support/topic/woocommerce-processing-email-wont-send/
-
Emails getting missedhttps://wordpress.org/support/topic/emails-getting-missed/
-
Emails sent out twicehttps://wordpress.org/support/topic/emails-sent-out-twice/
-
Post SMTP Pluginhttps://wordpress.org/support/topic/post-smtp-plugin/
-
Advanced Loghttps://wordpress.org/support/topic/advanced-log/
-
my customers no longer receive purchase confirmation emailhttps://wordpress.org/support/topic/my-customers-no-longer-receive-purchase-confirmation-email/
-
E-mails have not been sent for 3 dayshttps://wordpress.org/support/topic/e-mails-have-not-been-sent-for-3-days/
-
WooCommerce Failureshttps://wordpress.org/support/topic/woocommerce-failures/
-
Post SMTP Timeout – WooCommerce Orders Failhttps://wordpress.org/support/topic/post-smtp-timeout-woocommerce-orders-fail/
-
Email not showing in loghttps://wordpress.org/support/topic/email-not-showing-in-log-2/
-
Emails to Hotmail now going into Spamhttps://wordpress.org/support/topic/emails-to-hotmail-now-going-into-spam/
-
PostSMTP only sends mails when I am logged in as admin in Dashboardhttps://wordpress.org/support/topic/postsmtp-only-sends-mails-when-i-am-logged-in-as-admin-in-dashboard/
-
email from website are saving in sent itemshttps://wordpress.org/support/topic/email-from-website-are-saving-in-sent-items/
-
high cpu usage from sending emailshttps://wordpress.org/support/topic/high-cpu-usage-from-sending-emails/
-
2 emails sent when new order createdhttps://wordpress.org/support/topic/2-emails-sent-when-new-order-created/
-
email attachments 403 forbiddenhttps://wordpress.org/support/topic/email-attachments-403-forbidden/
-
Not allowed to send spamhttps://wordpress.org/support/topic/not-allowed-to-send-spam/
-
Throws vague error when unauthenticated (could not be converted to string)https://wordpress.org/support/topic/throws-vague-error-when-unauthenticated-could-not-be-converted-to-string/
-
Woocomerce New Order Admin email not being deliveredhttps://wordpress.org/support/topic/woocomerce-new-order-admin-email-not-being-delivered/
-
Woocommerce emails sending to multiple recipientshttps://wordpress.org/support/topic/woocommerce-emails-sending-to-multiple-recipients/
-
Suddenly not getting emails of saleshttps://wordpress.org/support/topic/suddenly-not-getting-emails-of-sales/
-
send to admin emailhttps://wordpress.org/support/topic/send-to-admin-email-2/
-
“incorrect authentication data” error messagehttps://wordpress.org/support/topic/incorrect-authentication-data-error-message/
-
Post SMTP plugin sends order status emails multiple timeshttps://wordpress.org/support/topic/post-smtp-plugin-sends-order-status-emails-multiple-times/
-
Email fails to send under specific conditionhttps://wordpress.org/support/topic/email-fails-to-send-under-specific-condition/
-
Email “Error Email Post SMTP”https://wordpress.org/support/topic/email-error-email-post-smtp/
-
4.7.1 System busy.Try again later. – emails not sending?https://wordpress.org/support/topic/4-7-1-system-busy-try-again-later-emails-not-sending/
-
woocommerce paypal orders don’t trigger post smtp configurationhttps://wordpress.org/support/topic/woocommerce-paypal-orders-dont-trigger-post-smtp-configuration/
-
Not Sending “New Order” Now After Updating Yesterdayhttps://wordpress.org/support/topic/not-sending-new-order-now-after-updating-yesterday/
-
DENIED BY RULEShttps://wordpress.org/support/topic/denied-by-rules-2/
-
550 5.7.0 [D1] Message rejected due to content policyhttps://wordpress.org/support/topic/550-5-7-0-d1-message-rejected-due-to-content-policy/
-
Code: , Message: , Body: (EMPTY)https://wordpress.org/support/topic/code-message-body-empty/
-
All woocomerce messages error with “This email has empty body”https://wordpress.org/support/topic/all-woocomerce-messages-error-with-this-email-has-empty-body/
-
Password reset inifite email loophttps://wordpress.org/support/topic/password-reset-inifite-email-loop/
-
[WooCommerce] SendGridMailMail not found PostmanSendGridMailEnginehttps://wordpress.org/support/topic/woocommerce-sendgridmailmail-not-found-postmansendgridmailengine/
-
Post SMTP working well but…https://wordpress.org/support/topic/post-smtp-working-well-but/