Opencart allows you to send email with either:
- PHP Mail (sent from web server)
- or SMTP (usually sent from another server)
PHP Mail VS SMTP which is best?
Both work well but PHP Mail is usually faster and usually already setup and working by your host. SMTP is more reliable and likely to end in your customers inbox and not marked as spam.
– The problem with sending emails using PHP Mail is that it gets sent from your website/server using the hostname they provide and not your domain name.
+ SMTP account will also usually include extra DNS settings to validate your domain further with an SPF record and DKIM signatures.
Recommended setting up mail setting using your email provider SMTP setting but for testing you can use a gmail account.
- Login to gmail go to account ‘Settings’ then ‘Forwarding and POP/IMAP’. – Enabled IMAP and/or POP.
- Go to Opencart admin Store Settings -> Mail tab. As an example we can use google mail settings:
Mail Protocol: SMTP SMTP Host: smtp.gmail.com SMTP Username: firstname.lastname@example.org SMTP Password: password SMTP Port: 465 (465=SSL // 587=TLS // 25=SMTP standard)
Also you can install phpMailer to replace opencarts Mail class, ensures all the email headers are included (SPF, DKIM) and fixes display issues on Apple Mail showing an empty preview in the inbox.
DKMI – DomainKeys Identified Mail
DNS – Domain Name System
SMTP – Simple Mail Transfer Protocol
SPF – Sender Framework Policy
A nice article explaining this further here: