SMTP support for group inboxes

We are pleased to announce support for using SMTP to send outbound group emails. This functionality improves the experience of using a group’s inbox on Discourse more like a support inbox. There are a few benefits to using this feature.

Why this matters?

By default when configuring Discourse all outbound emails uses a single SMTP configuration.

This means that “notifications”, “mailing list subscriptions”, “digests” and more all head out from a single endpoint using a single email address.

When using Discourse as a support portal, this behavior may not be desirable.

  1. You may prefer a better alias for your group inbox vs using plus addressing eg: support+group@yourmail.com
  2. If you configure mail forwarding from support@yourmail.com you would prefer emails to the users are also replied to by support@yourmail.com

When SMTP is configured for a group:

  • All emails will be sent from your SMTP email address, for example support@example.com, rather than the yoursite@discoursemail.com address
  • Users can respond directly these emails at the support@example.com, and their responses will be created in the correct topic at Discourse
  • Only one email at a time is sent to all participants of the group topic conversation, with participants CC’d into the discussion attached as CCs to the email
  • A streamlined template for emails sent from your group inbox

Here is an example of what an email sent using group SMTP looks like in Gmail:

Configuration

First of all, you need the enable smtp site setting enabled, as well as email in.

  1. Decide on the email address. For this to work, the address must already be working and able to receive email, and you must be able to set up email forwarding.
  2. On your Discourse site, go to the settings for the group you want to receive email. Configure as follows:
  • Enter the email address in the Custom incoming email address field.
  • Select Accept emails from anonymous users with no accounts
  • Select Accept incoming emails sent to
  1. Note the discoursemail.com email address listed next to Accept incoming emails sent to . In your email provider, configure forwarding of email to that address.
  2. If your email provider sends a verification email, get the link or code and use it to verify forwarding. You can find it in the rejected email logs at /admin/email/rejected if the block auto generated emails site setting is enabled, otherwise it should land in the group inbox.

SMTP Settings

  1. On your Discourse site, go to the settings for the group you want to receive email and open the Email tab.
  2. Check the “Enable SMTP” box and fill in your SMTP server settings. Some email providers such as Google will require you to use an app password to get around 2fa requirements. We provide a prefill option for Gmail.
  3. Click the Test Settings button. If the settings are okay, then you will be able to save. Otherwise, you should receive a helpful error message.
  4. Once the settings are saved SMTP will be enabled for the group! All emails sent from replies to topics in that group will be sent via SMTP, to each user in the topic that is not a member of the group. Members of the group still get notified via the normal discoursemail.com address.

To disable SMTP for the group, simply uncheck Enable SMTP and click the Save button.

Additional options

The following options are not required but may help improve the functioning of your email support setup.

  • Enable the allow staff to tag pms site setting to allow your team to organize personal messages with tags.
  • Enable the enable whispers site setting to your team to discuss group inbox messages internally without emailing the customer.
  • Enable the canned replies site setting to allow your team to quickly respond to commonly asked questions with a template.
  • By default, auto-generated emails are rejected by Discourse. Prevent this by disabling the block auto generated emails site setting.
  • Filter out some spam and mass emails from reaching your site by creating a filter in your email system to only send email addressed to e.g. support@example.com instead of forwarding all email.
  • If you have multiple email addresses you wish to forward into one group inbox, enter them into the Custom incoming email address field as a pipe separated list, like this: support@example.com|billing@example.com|webmaster@example.com . Note the last email address in this pipe separated list will always be the @discoursemail.com address and is required for email forwarding to work.
  • In the group Email tab, you can enable the “Allow unknown sender topic replies” setting. By default this is off, but if someone has auto forwarding for their email turned on and replies from a different email account, a new topic will be created from their reply. It is recommended you turn this on.


We are currently using this for our own support inboxes on Meta with great success. This feature is currently enabled for our Teams hosted customers available, and our Enterprise hosted customers can contact us to enable SMTP for their site.

21 Likes

This is totally amazing. I look forward to possibly rolling it out one day on our instance!

3 Likes

Does that mean Teams may be used as support group inboxes? How does that interact with the user limit? Do anonymous users take up Team slots? :slight_smile:

3 Likes

Yes! It does mean you can use Teams for support inboxes. The people you exchange emails with get staged user accounts that do not count towards the user limits. See the teams support topic for details.

4 Likes

I may be misunderstanding this new feature, but is there any plan to add the same type of “besoke sending address” functionality to individual categories and not just the groups configuration?

1 Like

No, unfortunately not. SMTP is only intended for group inboxes.

1 Like