As designed Email bounce handler only sets email_bounce if current state == 'valid'

Affected version


Well-known member
XenForo/Model/EmailBounce::triggerUserBounceAction will only set the user's email state to 'email_bounce' if their current state is 'valid'.

In our use case we have email validation required for new registrations (Options > User Registration > Enable Email Confirmation), so if a new user registers on the site (current state 'email_confirm') and their email bounces for whatever reason, it would be ideal to have their state changed to 'email_bounce' instead of left in the 'email_confirm' state indefinitely.


Well-known member
This is kinda as-designed as the user state has been overloaded with email-liveness tracking state.

There really needs to be a email_confirm_bounced state, so once a registration email has bounced the forum doesn't try keep sending to it if they click "resend".

Chris D

XenForo developer
Staff member
Indeed, at this point any changes would be better made as a suggestion. I think this has come up before, and we marked it "As designed". I'm not sure if a suggestion exists, but worth checking and making a suggestion if not.