/
Mail Settings

Mail Settings

Alert Mail

Send an email to the store owner when a new order is created.

Additional Alert E-Mails

Any additional emails you want to receive the alert email, in addition to the main store email. (comma separated)

Choosing the Right Mail Protocol

When configuring email settings in AbanteCart, you'll need to select the appropriate mail protocol. This decision impacts how your store sends emails, such as order confirmations, registration, and password reset emails.

  • Mail:

    • Uses PHP's built-in mail() function.

    • Simpler setup: Generally easier to configure if your server allows it.

    • Reliability: Can be less reliable than SMTP, especially on shared hosting environments.

    • Consult your web host: Check with your web host if they allow and support the mail() function on their servers.

  • SMTP (Simple Mail Transfer Protocol):

    • More reliable and flexible: Offers better deliverability rates and more advanced features.

    • Requires server configuration: You'll need to provide SMTP server details (host, port, username, password).

    • Popular choices: Gmail, Outlook, dedicated SMTP servers.

    • Consult your email provider: Refer to your email provider's documentation for the correct SMTP server settings.

  • System Config: This refers to configuring email settings directly within your config.php file. This approach offers flexibility and can be useful in certain scenarios.

The common issue arises when users copy and paste the SMTP password (or App password for Gmail), inadvertently including leading or trailing spaces. Incorrect passwords often result in generic error messages, making it difficult to pinpoint the exact cause of the issue.

 

 

Mail Protocol: Inner Mailer

If you're unsure about your server's SMTP settings or prefer a simpler setup (and your server allows it).

The Inner Mailer option in AbanteCart utilizes PHP's built-in mail() function to send emails from your store. Here's a breakdown of its key characteristics and considerations:

Functionality:

  • Leverages your server's configured mail sending program (typically sendmail or postfix).

  • Relies on settings defined in your server's php.ini file (specifically the sendmail_path setting).

Mail function behaves entirely differently between servers and has limitations on shared hostings.

an be less reliable than SMTP, especially on shared hosting environments. Each shared hosting companies have its own spam filters and blocking rules. If you want to use PHP mail, you need to make sure that your server can send emails and it is configured properly. This can be sendmail, postfix, or anything else that your server is set up with. Please contact your hosting if the mail does not work correctly.

 

If you encounter issues with Inner Mailer, consult your web hosting provider. They can confirm server configuration and troubleshoot any mail sending problems.

 

 

Mail Protocol: SMTP

The SMTP (Simple Mail Transfer Protocol) protocol is an alternative method for sending emails in AbanteCart. It involves using a dedicated email server (typically provided by your email provider) instead of your web hosting server's built-in mail functionality.

SMTP Host: Enter the hostname or IP address of your SMTP server (provided by your email provider).

SMTP Username: Enter the full email address of the account you created for sending emails (e.g., username@yourdomain.com).

SMTP Password: type the password of the same email account. Make sure your mail password contains only UTF-8 characters.

SMTP Port: The most common ports for SMTP are 25, 465 (SSL/TLS), and 587 (TLS). Consult your email provider's documentation for the correct port.

SMTP Timeout: This value (default 5 seconds) specifies the maximum time to wait for a response from the SMTP server. You might need to adjust this if your server experiences delays.

 

 


         Example of Gmail SMTP

  • Important Note: Since May 30, 2022, Google no longer allows third-party apps or devices to sign in to your Google Account using only your username and password.

To use Gmail with SMTP in AbanteCart, you must:

  1. Create an App Password:

    • In your Google Account, go to Security -> App passwords.

    • Click Select app.

    • Choose "Other (Custom name)" and give it a descriptive name (e.g., "AbanteCart").

    • Click Select device and choose "Other (Custom name)".

    • Click Generate.

    • Copy the generated 16-character app password. Do not share this password with anyone.

  2. Configure AbanteCart SMTP Settings:

    • SMTP Host: ssl://smtp.gmail.com

    • SMTP Port: 465 (for SSL)

    • SMTP Username: Your full Gmail address (e.g., your_email@gmail.com)

    • SMTP Password: Use the generated App Password, not your regular Gmail password.

Key Points:

  • App Password Security: Treat your App Password like a regular password. Do not share it with anyone.

  • Revoke App Passwords: If you suspect your App Password has been compromised, revoke it and generate a new one.

  • Test Email Sending: After configuring SMTP, send a test email to ensure it's being delivered correctly.

By following these steps and using the generated App Password, you can securely configure Gmail as your SMTP server within AbanteCart.

 


Mail Protocol: system/config

Advanced Users: This method is generally more suitable for users with experience in PHP and server configuration.

the new email library is included helping connect to different mail transports (3rd Party Transport). This refers to configuring email settings directly within your /system/config.php file. This approach offers flexibility and can be useful in certain scenarios.

 

Here are a few examples of the configurations you need to add to your config.php file. To work with other mail transports please follow symphony guides.

Google Gmail SMTP example

GMAIL example
const MAILER = [ //'dsn' => null, // OR 'protocol' => 'smtp', // or ses+smtp, gmail+smtp, mandrill+smtp, mailgun+smtp, mailjet+smtp, postmark+smtp, sendgrid+smtp, sendinblue+smtp, ohmysmtp+smtp //we use "username" also as ID, KEY, API_TOKEN, ACCESS_KEY 'username' => 'username@gmail.com', 'password' => 'your_gmail_app_password', 'host' => 'smtp.gmail.com', 'port' => 465 ];

 

 

 

Amazon SES is an email platform that provides an easy, cost-effective way for you to send and receive email using your own email addresses and domains. Make sure to set sending permission in the Amazon SES dashboard

Amazon SES example
const MAILER = [ //'dsn' => null, // OR 'protocol' => 'ses+smtp', // or ses+smtp, gmail+smtp, mandrill+smtp, mailgun+smtp, mailjet+smtp, postmark+smtp, sendgrid+smtp, sendinblue+smtp, ohmysmtp+smtp //we use "username" also as ID, KEY, API_TOKEN, ACCESS_KEY 'username' => 'ATIA6H2YCK2CFSJX7M', //your SMTP key 'password' => 'kUMmlg4fdfghfgOA54C', //your SMTP password 'host' => 'email-smtp.eu-west-2.amazonaws.com', //your SMTP endpoint 'port' => 465 //or 587 etc ];

 

 

Mailchimp transactional email 

Delivery API, or application programming interface, that can deliver transactional emails to customers. 

Keep in mind that Mailchimp Transactional is formerly known—and is sometimes still referred to—as “Mandrill”

Every Mailchimp Transactional account has a reputation and hourly quota and understanding how reputation works is key to ensuring the high deliverability of your messages. 

To generate API key navigate to the Settings of your Mailchimp Transactional account (Mandrill app) and look for the API Keys section

Mailchimp Transactional example
const MAILER = [ //'dsn' => null, // OR 'protocol' => 'mandrill+smtp', // or ses+smtp, gmail+smtp, mandrill+smtp, mailgun+smtp, mailjet+smtp, postmark+smtp, sendgrid+smtp, sendinblue+smtp, ohmysmtp+smtp //we use "username" also as ID, KEY, API_TOKEN, ACCESS_KEY 'username' => 'any_username_will_work', // Any string (Mailchimp recommend using the primary contact email on your Mailchimp account) 'password' => 'mandrillapp_API_KEY', // Any valid Mailchimp Transactional API key 'host' => 'smtp.mandrillapp.com', //your mandrill SMTP endpoint 'port' => 587 ];

To increase the timeout please change the default_socket_timeout in your php.ini

 


Related articles

AbanteCart, all rights reserved. 2025 ©