I am currently trying to figure out the best user experience for VERIFYING an email or mobile phone number.
Our company deals with money, so this has to be secure. Also our demographic is skewed a bit older now or less tech savvy. So this has to be as easy as possible. Also, They must verify their email/mobile before they can use their account. Unfortunately, This is non negotiable. We have to be able to communicate with them somehow.
Here are some details of what we're looking at right now.
A user can verify their mobile/email by typing in a verification code on the site. The user gets a text/email with a code that they fill in on the page. This is the best option for non-tech-savvy users. Downfalls are that they have to type a number. basically... It's just not inventive and feels old.
A user can verify by clicking on a link in text/email and going to a dead-end page. This is nice only because they don't need to copy and paste anything (unless their email is non-HTML, then they copy and paste a link). What happens after they click the link? Right now, the link leads to a dead-end. A page opens and says "you're verified". The downfalls are that the user has to find their old tab, which could potentially be on a different browser now (assuming the default browser was different than where they started). The user could feel like there is nothing else to do, even with messaging directing them back.
A user can verify by clicking on a link in text/email and continuing the process from there. The user can click on the same link as above, but the page is not a dead-end anymore. The fear is that the browser is not default and they could be placed into a bad browser that does not support javascript (for example). Also, their last tab then has to die. This is possible, but leaves the user with a dead tab. Again, there's a big fear that they couldn't continue on a default browser assuming it is different. Also, session management would be a bit difficult, having to use server-side code to connect a token to their "session"
What are your thoughts out there? We currently have a link (#2) and the verification code as two options. We have a time limit of 10 minutes to make sure the registration doesn't expire.