Using Transactional Email Service for Your E-Commerce Platform

First of all, do not get it wrong. “Transaction email” here does not refer to only financial transactions. Quoting from MailChimp blog post:

…think of it as “anything that isn’t bulk“. Basically, it is email sent to an individual based on some action.

In my own words related to e-commerce, transaction emails are all notification emails sent out by your e-commerce/shopping cart platform related with a customer’s account or order activities such as:

  • Account creation welcome email
  • Password reminder/reset instructions
  • Order confirmation/invoice
  • Order status update
  • Shipping tracking number
  • Order review request, etc

By default, if you host your e-commerce platform on your own server, most likely these emails are sent directly using the server’s built-in mail application like sendmail on Apache/PHP environment. If you have this running then all is good, but what if you can make it even better? By using 3rd-party transaction email provider, you send out these emails through their server. Usually communication between your server and theirs is done through APIs or SMTP.


Why is it better? There are additional features that you can gain from using a separate server/service to send our your transactional email:

Higher rate of deliverability

Even if you have a very good and clean server, there is still a possibility that your server’s IP to get rejected by certain ISPs (Gmail, Yahoo, Hotmail, etc) when they feel that too many emails coming from the same origin. Like email SaaS, transactional email services most likely have a farm of servers with multiple IPs that has been optimized to get maximum acceptability across different ISPs.

Additional insights of your email activities

You now have the options to track the numbers of bounced emails, open rates and click rates just like when you are sending your newsletter email campaigns. While the accuracy of this not 100%, you can only track open rate if the customers’ email readers supports HTML, it is still a valuable additional insight. Let’s say you see that the open rate for your invoice emails is very low, probably the subject is not clear enough and you can make an improvement on it.

Create additional rules

Customers occasionally enter wrong email address in their order details which may result the notification emails never get delivered to them. By setting a simple rule like to notify you when an email gets bounced, you can then check the cause and email address, and if possible correct it before the customer contacts you regarding his order.

Services Compared

There are few services that offer to send transactional emails. There are typically 2 types of pricing:

  1. Monthly plan
    You pay a flat monthly fee and you will be given a quota of number of emails that can be sent within that cycle.
  2. Pay-as-you-go
    You pay based on the number of emails or credits that you have sent out within that month.
  3. Buy bulk credits
    You buy a bundle of credits where it will be subtracted every time you send out an email.

Honestly I cannot rate each of the services’ quality and features, as in the context of e-commerce applications we are not using the features or APIs too extensively. For now, I only compare them based on pricing and compatibility with most popular self-hosted shopping cart platforms, Magento and OpenCart.

  SendGrid-Logo Postmark-Logo Mandrill-Logo MailJet-Logo
Price starts from $9.95 per month – 40,000 credits $1.50 per 10,000 emails Free for first 12,000 emails in a month Free for first 6,000 emails in a month
Magento integration documented plugin MagentoConnect extension plugin
OpenCart integration via SMTP via SMTP or PHP class extension ($10) via SMTP

If you have experience using different transactional email services for your online store, please share it here.

Leave a Reply