Available for projects & agency overflow · Quick reply, from the person who does the work

Order confirmation emails not received on PrestaShop

An order is properly recorded in PrestaShop, but no confirmation email ever reaches the customer: the cause almost always sits in the delivery chain that follows the order, rarely in PrestaShop itself.

Describe my issue Send a message

The email never leaves

By default, PrestaShop sends its transactional emails through the PHP mail() function, without going through a properly authenticated SMTP server. Many shared hosts throttle or block this function without any visible error in the back office: the order is validated, PrestaShop believes the email was sent, but the host silently rejected it.

The native fix is configuring an external SMTP server under Advanced Parameters > Email, with its authentication credentials. That’s the first thing I check, and in most cases it’s enough to restore delivery.

Another possible cause: the ps_emailalerts module disabled by mistake, or a custom email template in the mails/ folder with a Smarty syntax error after an edit, which blocks the message from being generated at all.

The email leaves, but never arrives

A trickier case: sending succeeds on PrestaShop’s side, but the message lands in spam or never reaches the customer’s provider at all. This is usually a sender domain authentication issue: without properly configured SPF and DKIM records, major mail providers flag the email as suspicious, especially if it’s sent from an address that doesn’t genuinely belong to the site’s domain.

This is set at the domain’s DNS level, not inside PrestaShop: I check first whether SPF and DKIM exist, then fix or set them up as needed.

Related pages

Describe your need in one minute

A few targeted questions so I can reply with an estimate rather than another questionnaire.

objectif
version
emplacement (facultatif)
existant (facultatif)
echeance (facultatif)
Please provide an email or a phone number so I can get back to you.

Please provide an email or a phone number so I can get back to you.

Frequently asked questions

How can I check whether the email actually leaves PrestaShop?
Advanced Parameters > Email offers a direct test send, independent of the order process. If that fails too, the problem is server configuration, not the order flow.
Do I need a paid SMTP service?
No, a standard mailbox at the host is often enough, as long as its exact credentials are entered into PrestaShop. A dedicated SMTP service becomes useful once sending volume grows.
Do customer sign-up emails have the same issue as order emails?
Yes, they use the same sending mechanism. If order confirmations aren’t arriving, account creation and password reset emails are usually affected too.
Can a customer’s phone number be added to the confirmation email?
Yes, but that means editing the Smarty template in the mails/ folder for the relevant language, plus the controller that prepares the variables passed to it. That’s targeted development, not a back-office setting.
Who sets up SPF and DKIM?
These are DNS records, managed at the domain registrar or mail host. I can check whether they exist and specify exactly what to add, even without access to the hosting account.