Implemented Bounced Email Management

dvsDave

Well-known member
I would like to see a built-in method for handling email bounces.

Being able to set the -f flag, define a bounce email address, and then in the server, pipe a particular email account to a php file for processing. (if there is a better way to do this, please let me know!)

If the bounce code (either traditional or enhanced) is a hard failure (i.e. mailbox does not exist, or delivery refused, etc)

Then the account is set back to awaiting email confirmation and it will suspend any email service for that username and set a notification to update the email account next time the user logs in.
 

snoopy5

Well-known member
Since version 1.2 is out now and the developers can concentrate n new features for the next version I would like to highlight here again one of the most important feature request for XF, if you do not want to get blacklisted by email providers.

We absolutely need this bounced email management asap. I do not use the XF email system for many newsletters. But it needs only 2-3 a year to the wrong email addresses and you get blacklisted by AOL, hotmail... you name it. And you will be never notified about it and will have a hard time to get off this blacklist...
 

DeltaHF

Well-known member
Agreed, this isn't functionality most board owners think about, but it's critical if you're serious about growing your community, and can become a massive administrative headache as your board scales.

It was a nightmare for me (my board sends an average of about 5,000 transactional emails per day) until I started sending email using SendGrid's SMTP service. They work with ISPs to remove you from blacklists and provide a ton of other features I've found very useful, but the best is their "Event Webhooks " API. It's basically what @BamaStangGuy mentioned on the last page.

When their service determines that a message has bounced or been marked as spam, they send an HTTP request to the URL of your choice. I wrote a custom little script for my vB 3.8 forum and pointed the SendGrid API to it; it just gets the bounced email address from the POST, looks up the user in question, and moves their account to the "unconfirmed email" user group.

I'm afraid the wild variations in server email configurations and services will hinder any progress on bringing something like this to the core, and will definitely be re-creating this script when I move my forum over to XenForo. If there's a lot of interest in this (as there should be for such important functionality), it's something I would consider packaging and sharing as a plugin.
 

Brent W

Well-known member
Agreed, this isn't functionality most board owners think about, but it's critical if you're serious about growing your community, and can become a massive administrative headache as your board scales.

It was a nightmare for me (my board sends an average of about 5,000 transactional emails per day) until I started sending email using SendGrid's SMTP service. They work with ISPs to remove you from blacklists and provide a ton of other features I've found very useful, but the best is their "Event Webhooks " API. It's basically what @BamaStangGuy mentioned on the last page.

When their service determines that a message has bounced or been marked as spam, they send an HTTP request to the URL of your choice. I wrote a custom little script for my vB 3.8 forum and pointed the SendGrid API to it; it just gets the bounced email address from the POST, looks up the user in question, and moves their account to the "unconfirmed email" user group.

I'm afraid the wild variations in server email configurations and services will hinder any progress on bringing something like this to the core, and will definitely be re-creating this script when I move my forum over to XenForo. If there's a lot of interest in this (as there should be for such important functionality), it's something I would consider packaging and sharing as a plugin.
I am interested in this.
 

dvsDave

Well-known member
I"m interested as well. Ouch, SendGrid's Event API is only an option on the $80 per month plan. Bummer. I don't send out near that volume to justify the expense.
 
Last edited:

DeltaHF

Well-known member
I"m interested as well. Ouch, SendGrid's Event API is only an option on the $80 per month plan. Bummer. I don't send out near that volume to justify the expense.
SendGrid is what I use (and love - managing my site's email bounces and spam reports went from a daily headache to being something I check in on once a month), but there's a lot of similar services.

MailJet, PostMark, SMTP.com, and MailChimp's transactional email service, Mandrill, all provide similar event-driven "webhook" API functionality now. There's probably a lot more out there, too.

There is little reason for anyone to send emails from their own infrastructure anymore, other than cost. Even then, you have to factor in the time and effort of troubleshooting and dealing with these headaches, not to mention the cost of lost community interactions from members who miss out on your site's notification emails, or get frustrated (and leave) because they never get the account activation email. This stuff is important.
 

dvsDave

Well-known member
Mandrill looks pretty good. First 12k emails are free and the API is accessible at all levels.
 

snoopy5

Well-known member
...
There is little reason for anyone to send emails from their own infrastructure anymore, other than cost. ....
That is exactly the point. I have to send out around 60.000 emails per month, but can not afford to pay 50 or 80 USD/month for it. And I guess most XF users neither. When I was using vb3.8x, there was an addon called "EZbouncedmanagement", which did this handling (although very primitive) very good. A solution like this would help already.

This addon just inserted a specif codeline into each email for the user-id. As soon as the email bounced and came back to me, I could click on that link and the user was automatically moved to a different usergroup for email confirmation, all email alerts for threads/postings/PMs were then automatically disabled and even an admin could not send a mail or PM to this acount. And if the user logged in after that, he got a pop-up message about these changes and that he has either to change his email address or reconfirm it.

So except for the work of clicking on each link of each bounced email manually, this was a perfect solution. I am looking for something like this for XF. Full automatisation would be even better of course. I would be willing to pay for an addon for this. But it should be actually part of the core code.
 

Alfa1

Well-known member
So except for the work of clicking on each link of each bounced email manually, this was a perfect solution.
I was clicking those links for weeks. This drove me insane. Thats why I had an advanced and fully automated addon created and optimized it over time. Such addon does not only need to correctly identify real bounces and manage users, users also needed to be guided through the process of correcting the issue / updating their account with a working email.
 

snoopy5

Well-known member
I was clicking those links for weeks. This drove me insane. ...
:)

I can feel you... But on the other hand, still better than nothing and doing it now even more slowly with XF, not even having a link to click on and not even having any kind of automated reaction to change userproflie settings. This is really now the worst case scenario with XF.
 

dvsDave

Well-known member
I was clicking those links for weeks. This drove me insane. Thats why I had an advanced and fully automated addon created and optimized it over time. Such addon does not only need to correctly identify real bounces and manage users, users also needed to be guided through the process of correcting the issue / updating their account with a working email.
Are you saying you have a solution built already?
 

Alfa1

Well-known member
Yes, indeed. Its a solution for vbulletin. It took 4 months to create, test, improve and a a lot more to expand it. Basically what it does is make sure that all outgoing email (mailing, birthdays, notifications, etc) get a set of tags and everything that needed to confirm to spam laws and email provider rules. A scheduled task pulls in bounced emails, analyses these and applies advanced rules to these to define what the bounce is. (This is where by far most software goes wrong) Then decides the correct course of action, disabled accounts and guides members trough the reactivation process.

I also have an addon created for vb that blocks registration with fake email, lets moderators first research new email domains and adds each domain to a blacklist or whitelist. If a new members email domain is blacklisted, then they are automatically requested to correct this. Else the account will get purged.
 
Last edited:

Marcus

Well-known member
I developed a perfect working xenforo addon that handles all bounced mails and updates the users. I do wonder whether the addon should remove also the users actual email address, as the not working address might be useful to notify the user "The email address mail@domain.com is not working, please submit another one".
 

Alfa1

Well-known member
yes, it would be useful to show this. But when notifying the user, its good to explain why its not working. There is quite a difference between bounce messages and its always handy to be able to find the bounce reason when you are trouble shooting.
 
Top