PrestaShop SMTP settings is easy
A simple way to set up your PrestaShop SMTP settings.
You can choose between two ways to send emails : the PHP mail function or an SMTP mail server.
How to setup your Prestashop SMTP parameters
Do not need to manage your own outgoing mail server on your server / hosting! It's very hard and will wast your time. And you also don't know how to configure your mail server correctly to avoid spam filters.
You can simply configure Gmail SMTP settings into whatever script or program you wish to send email from. It does not require any Prestashop addons. All you need is either a free Gmail account or paid Google Apps account, and then, you only need to focus on email template & email content.
You have the option of having Google store and index the emails you send via its SMTP server, so all your sent emails will be searchable and backed-up on Google servers. If you elect to use your Gmail or Google Apps account for your incoming email as well, you'll have all your email in one convenient place.
Email system is a vital Prestashop core. One of our PrestaShop module - IConvert Promotion uses this system to send the discount voucher after the purchase to your customers for the future purchases, apply a discount based on customer groups, categories, suppliers, volume or price.
First, log in to the PrestaShop back office. Then click on the ADVANCED PARAMETERS tab.
From the submenus that appear underneath click on E-mail. You'll see the two email options: Use PHP mail() function and Set my own SMTP parameters.
Click on the "SMTP parameters option" and “For advanced users ONLY”:
- Login to admin panel
- Click on ADVANCED PARAMETERS and then on “Email” tab
- Select “Set my own SMTP parameters”. “For advanced users ONLY” radio button.
Let's say, for example, that you want to use your Google account to send mail. Now let's look at the SMTP parameters that you have to configure:
- Mail domain name - you don't really need to type anything in the field for this option. Keep this field empty if you don't know.
- SMTP server - Your SMTP server. Gmail SMTP server address – “smtp.gmail.com”
- SMTP user - Fill the full email address of the email account you created earlier. Don't type just the username part, but the whole address (e.g. firstname.lastname@example.org).
- SMTP password - type the password of the same email account.
- Encryption - It's recommended if you want your mail to be safer, to use encryption. So set the drop-down menu to TLS or SSL. You need to enable your Server / Hosting SSL Socket - I will tell you how to do on last step
- Port - provided you chose TLS or SSL from the encryption drop-down menu, the port number that you should type is 465 / 587.
Gmail SMTP port (TLS): 587.
Gmail SMTP port (SSL): 465.
In order to store a copy of outgoing emails in your Gmail or Google Apps Sent folder, log into your Gmail or Google Apps email Settings and....read the line bellow
- Click on the Forwarding/IMAP tab and scroll down to the IMAP Access section: IMAP must be enabled in order for emails to be properly copied to your sent folder.
Ok, save your work!!! At the bottom of the Email page of your store's back office you'll find an email test function button to test email. It's right under the SMTP server settings.
In our experience, the most common problem is the SSL, specify on localhost. You need to enable ssl socket to use Gmail SMTP which encryption enabled during connection.
The solution to fix the problem is the following :
- First stop your Apache service
- If you are on Cloud server, go to next step. If you are on localhost, find libeay32.dll and ssleay32.dll in xampp\php\ folder, and copy it into xampp\apache\bin\ folder. Just overwrite the older files in there.
- Edit php.ini file and remove the semicolon in “;extension=php_openssl.dll”. On localhost, you can find php.ini in xampp\apache\bin ( or xampp\php ).
- If you can’t find this line, just insert “extension=php_openssl.dll” in your php.ini.
- Start the Apache service.
That’s it, your SSL transport socket in your web server has been activated.
Sending Limits - Google limits the amount of mail a user can send, via its portable SMTP server. This limit restricts the number of messages sent per day to 99 emails; and the restriction is automatically removed within 24 hours after the limit was reached.
You can use Mailgun as an SMTP Email Server alternative. It's free for every 10.000 emails per month No more free. If you're a Startup, you'll never send more than 10.000 emails each month. We're using Mailgun + SES.
Some third-party email marketing solutions such as MailChimp offer not only email marketing service but also SMTP email account, so you can use it for transaction email such as order confirmation emails on your online store. Learn how to integrates MailChimp with PrestaShop.
Google 2-Step Verification - You need to turn off Google 2-Step Verification to use Google Account as your Prestashop SMTP server.
What do you think about this Prestashop Tutorial? If you have any questions, please comment below.
06/03/2018 updated: Some one reported that they can not send the email using Yahoo SMTP server. I suggest to use Gmail SMTP (free, limited), Zoho (free, limited) or Mailgun SMTP server ( free and paid Oh no! This e-mail provider no more offers a free plan)!
31/07/2016 updated: Because Google account page has changed, you need to turn on "Allow less secure apps" on your Google Account to make sure your Prestashop website can send the email.
Watch this Gmail SMTP Settings video for more information!