← Back to blog

Fix PrestaShop Email Support Issues

October 29 20264 min readNBy the NeuraDesk Team

In this article

You open a customer order in PrestaShop and click "Send email," but nothing arrives. Or customers say they never got your reply. Maybe test emails work but order confirmations don't. These symptoms point to different root causes, and the fix depends on which one you're facing.

1. Incorrect SMTP configuration

This is the most frequent cause. PrestaShop's default PHP mail() function often fails on modern hosting because of spam filters or missing sendmail.

How to confirm

  • In the PrestaShop back office, open the email settings page (see PrestaShop documentation for the exact location) and run the test email function. If the test fails, SMTP is misconfigured.
  • Check the email logs in the back office (see documentation) for entries like "Error: Could not authenticate" or "Connection timed out."

How to fix

  1. In the email settings, enable SMTP.
  2. Enter your SMTP host (e.g., smtp.gmail.com, smtp.sendgrid.net), port (587 for TLS, 465 for SSL), encryption (TLS or SSL), username, and password.
  3. Use an app-specific password if your provider requires it (Gmail, Outlook, Yahoo).
  4. Save and run the test again.

If you're on shared hosting, ask your provider for the correct SMTP details — many block port 25 and require 587 or 465.

2. Email queue or cron failures

PrestaShop 1.7+ uses an email queue table processed by a cron job. If cron isn't running, emails sit in the queue indefinitely.

How to confirm

  • In the database, check the email queue table (prefix may vary). Rows with a "sent" status of 0 and a timestamp older than a few minutes mean the queue is stuck.
  • Verify that a system cron job runs the PrestaShop cron script regularly (see PrestaShop documentation for the recommended command).

How to fix

  1. Ensure a system cron job runs every 5–10 minutes. The exact command depends on your installation; consult the PrestaShop documentation.
  2. If you can't set up a system cron, use a third-party cron service to hit your shop's cron URL.
  3. After cron runs, check the queue table again — the "sent" flag should flip to 1.

3. Module or theme conflicts

A poorly coded module (especially email customizers, newsletter tools, or order-status modifiers) can override PrestaShop's mail class or hook into email sending and break delivery.

How to confirm

  • Disable all non-native modules temporarily.
  • Switch to the default theme.
  • Send a test email. If it works, re-enable modules one by one until the failure returns.

How to fix

  • Update the conflicting module to its latest version.
  • Contact the module developer with the error from logs.
  • If no fix exists, replace the module with an alternative.

4. Server or hosting restrictions

Shared hosts often limit outbound email: daily caps, blocked ports, disabled mail(), or mandatory SMTP authentication.

How to confirm

  • Ask your host: "Do you limit outbound email? Is port 587 open? Is PHP mail() enabled?"
  • Try sending via an external SMTP service (Gmail, SendGrid, Mailgun, Brevo). If that works, the restriction is on your server.

How to fix

  • Use a transactional email provider (many offer free tiers). Configure their SMTP in PrestaShop as described in section 1.
  • If you must stay on server mail, request a limit increase or move to a VPS/cloud server with full control.

5. Spam filtering or blacklisting

Emails may send but land in spam, or your domain/IP may be on a blocklist.

How to confirm

  • Send a test to a personal email address and check the spam folder.
  • Run your domain through an online email testing tool.
  • Check public blocklist databases for your domain or IP.
  • Look for missing SPF, DKIM, or DMARC records.

How to fix

  1. Add an SPF record appropriate for your email provider.
  2. Enable DKIM signing in your email provider's dashboard and add the required DNS records.
  3. Publish a DMARC record (start with p=none, monitor reports, then tighten).
  4. If your IP is blacklisted, request delisting after fixing authentication.

6. PrestaShop core bugs or version issues

Occasionally a PrestaShop version introduces a regression in the mail sending logic.

How to confirm

  • Search the PrestaShop issue tracker for your version (e.g., "email not sending 8.1.0").
  • Check the changelog for email-related fixes in newer patch releases.

How to fix

  • Apply the specific patch if one exists (often a single file replacement in the mail class or SwiftMailer library).
  • Upgrade to the latest maintenance release. Always backup files and database first.

If nothing worked

  1. Enable debug mode in PrestaShop (see documentation) to see detailed error output.
  2. Reproduce the failure and copy the full stack trace.
  3. Post the trace on the PrestaShop community forum or issue tracker with your version, PHP version, and SMTP provider.
  4. As a temporary workaround, forward support emails to a dedicated helpdesk that converts them to tickets automatically. A free option like NeuraDesk handles email-to-ticket conversion, shared inbox, and AI reply suggestions without per-agent fees.
  5. If the issue is urgent and you lack developer resources, hire a PrestaShop specialist — many offer fixed-price email diagnostics.

Join teams already using NeuraDesk

Ready to get started?

Create your workspace and try NeuraDesk for free.

Sign up free