If PrestaShop order confirmations, password resets, or newsletters aren't showing up, the fix is almost always the same: stop using PHP's default mail() function and configure SMTP with real credentials. Go to your PrestaShop back office, open Advanced Parameters > E-mail, and switch the mail method from "Use PHP mail() function" to "Use SMTP" (worded slightly differently in some versions).
PHP's mail() hands the message to the server's local mail transfer agent without authentication, and most receiving mail servers now flag or reject that as likely spam. SMTP with authentication (your real mailbox username and password) sends properly signed mail that's far less likely to get bounced or filtered.
SMTP settings to use
If you're sending from a mailbox hosted on the same domain as your PrestaShop store, use:
- SMTP server:
mail.yourdomain.com - SMTP username: the full email address (e.g.
orders@yourdomain.com) - SMTP password: that mailbox's password
- Encryption: SSL on port
465, or TLS on port587
Create the mailbox first if it doesn't exist yet, from the Email Accounts tile in the portal. Use the same host, ports, and encryption you'd use in any desktop mail client. PrestaShop's SMTP fields work the same way.
Test it before trusting it
PrestaShop's email settings page has a "Send a test email" button. Use it after saving. If the test email arrives but lands in spam, the usual cause is DNS, not PrestaShop. SPF and DKIM are configured automatically for hosted mailboxes on Flashcloud, but if you're sending "as" a mailbox on a domain that isn't hosted here, or a domain whose nameservers point elsewhere, those records may not match what your SMTP server sends from. Check DNS in Services > your hosting > DNS Zone Editor if you manage that domain's records yourself.
Why mail() fails silently
A common trap: PrestaShop shows "email sent successfully" even when the message never arrives. That success message only means PHP handed the message off, not that any receiving server accepted it. If you're still on mail() and orders seem to process but customers report no confirmation email, that's the mismatch to watch for. Switching to SMTP fixes it because you get real delivery feedback: an authentication failure shows up as an actual error, instead of vanishing.
The hosting stack under your store
PrestaShop runs on LiteSpeed Web Server on Flashcloud, and you can switch PHP versions (7.4 through 8.3) per domain from the PHP Version tile in the portal if a theme or module needs a specific one. For a fresh install, the Softaculous Apps Installer in cPanel can set up PrestaShop with one click. See how the stack keeps pages fast in how we make your site fast, and how to reach these tools in accessing cPanel.
If test emails still won't send
If test emails still won't send after correct SMTP credentials and matching DNS, open a ticket from Support in the portal. Include the exact error PrestaShop shows on the test-email screen. That error message is the fastest way for a real person to tell whether it's a credentials issue, a port block, or something upstream at the receiving mail provider.