Garage

New Email Infrastructure

Lately, email deliverability has become one of the biggest pains in Invoicebus, so we had to change the way we handle emails.

Important notice: Your “From” address for sending emails through Invoicebus will be changed to “yourname@mail.invoicebus.com“. The change takes effect on July 13, 2015 (Monday).  No action on your part is required, yet we recommend reading this post as there are few more things you should know.

It’s one thing to send email but another thing to actually deliver email. Given the fact that more than 90% of all daily emails are spam, Email Service Providers are constantly changing their policies. A small deviation from the ESP rules can easily throw completely legitimate email into the spam folder.

As the email is core functionality in Invoicebus, we have to be on top of the game to ensure your emails always land in the right inbox.

In the past few years, many popular ESPs like Yahoo, Hotmail, and others, have imposed extra restrictions to lower the spam they get. New types of email authentication and verification like DMARC policies were set in place. These rules started to cause email deliverability issues in Invoicebus.

Problem

Few years ago, Invoicebus was sending emails on behalf of our customers by specifying their original email address in the “From” field. This was working well until many ESPs decided to adopt the DMARC policy. Simply put, DMARC policy doesn’t permit the address in the “From” field to be on a different domain than the sending server domain:

Example:

From: peter.griffin@yahoo.com
Reply-To: peter.griffin@yahoo.com
Server: invoicebus.com

To solve this, we implemented a small hack – instead of putting the customer’s original email address into the “From” field we specified a permanent email address registered under our domain (notifications@invoicebus.com). As the customer’s original email address was specified into the “Reply-To” field, all email replies would go to the right inbox without a problem.

Example:

From: notifications@invoicebus.com
Reply-To: peter.griffin@yahoo.com
Server: invoicebus.com

This was working quite well until we started receiving complaints from customers that some of their emails are mistakenly marked as spam.

The problem became even more serious when a few customers reported that their emails are not delivered at all. We weren’t sure what’s happening because Invoicebus was receiving delivery confirmations from the remote servers, yet the emails were somehow dropped by their internal mechanisms. After an exhaustive investigation, we found out that this was caused by a new spam rule introduced by the popular spam software SpamAssasin. The rule requires the addresses specified into the “From” and “Reply-To” field to be on the same domain as the sending server domain. Who would have thought? Just solved one problem another one appears.

Solution

There was no quick solution nor any possible workarounds to this. We had to completely migrate our email infrastructure and the way Invoicebus handles emails. This resulted in developing two new features for handling emails:

  • dedicated Invoicebus mailbox for each customer (for example username@mail.invoicebus.com)
  • optional setting that allows specifying custom SMTP server

1. Dedicated Invoicebus mailbox (default option)

Note: All customers will receive a dedicated Invoicebus mailbox automatically.

Invoicebus will generate a unique email address from your original address and set it as a default “from/reply-to” address for all outgoing emails you send. For example, if your login email is peter.griffin@yahoo.com your Invoicebus email will be peter.griffin@mail.invoicebus.com. The username before the @mail.invoicebus.com part is required, and you can change it to whatever you like (if available).

Example:

From: peter.griffin@mail.invoicebus.com
Reply-To: peter.griffin@mail.invoicebus.com
Server: mail.invoicebus.com

This ensures any messages sent via Invoicebus to pass even the most restrictive spam filters.

Your clients can also directly reply to any email you send. Invoicebus catches the replies and automatically forward them to your original email address. If the conversation relates to a document, the entire message thread will be saved under the document’s activity history as an incoming email (depends on the plan). This way you can keep all your important conversations in one central place (see image below).

New Activity History Invoicebus

2. Custom SMTP email server

Specifying a custom SMTP (depends on your plan) gives you the flexibility to send emails via your own email server/mailbox. This way your clients will get emails from your original email address (or address on your domain), rather than the one assigned by Invoicebus.

Email settings - Invoicebus

Please note that if you specify custom SMTP server, Invoicebus won’t be able to track any email events such as delivered, bounced and opened (“opened” is a new event that shows when an email is opened by the client. This is different from “document opened”, which fires only when an online document is opened).

Last but not least is the customization of your Display (From) Name, where you can specify the name your client sees when they get an email from you (see image below). If you leave this empty it will default to the last saved company name.

Received Email

The new infrastructure should significantly improve the email deliverability. It should also give you a better insight of what’s going on with your emails almost in real-time. The easiest way to keep track of your emails is to take a look at the dashboard and see the status of each email, reminder, and thank-you note. Here’s a quick reference:

Email tracking statuses

Dimitar Stojanov
Dimitar is co-founder of Invoicebus, an online invoicing tool for easy invoice management. He's passionate about creating beautiful and simple web applications and occasionally writes on this blog about web design, online business, and fighting the status-quo. Follow him on Twitter and Facebook.
Dimitar Stojanov
- 2 weeks ago
Dimitar Stojanov

Latest posts by Dimitar Stojanov (see all)

Stefan Chachovski
Co-founder of Invoicebus. Huge lover of nature, science, and chocolate cherry cordials. He occasionally writes on this blog about Invoicebus' stuff. Hello him on Twitter or subscribe to his updates on Facebook.
Stefan Chachovski
- 6 months ago

2 Comments

  1. Peter Royle says:

    Wow, what a hassle! I hope that your scheming and plotting will work out well. I will let you know if any problems occur.
    Thanks for your work
    Peter

  2. Thank you, Peter. That’s very kind of you.

    All tests we’ve run on our test servers performed very well. We haven’t noticed any false positives, nor dropped messages. Now, we are doing final checks and preparing the official release for Monday.

    Please keep us posted if you encounter any issues.

    Thanks again,
    Stefan

Leave a Comment