Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations TouchToneTommy on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

verify new members email address without leaving eshop

Status
Not open for further replies.

miraclemaker

Programmer
Oct 16, 2002
127
GB
I know this is not really the right forum for this question, I couldn't think of the best place for it, but I know there are some smart people in here so I thought I'd pick your brains.

We run a membership program on our website. When someone signs up they are sent an email to their account that contains a link they must click to verify their email address in the standard way.

Now we are developing our own eshop (it is currently provided by a third party), I have come across a fiddly problem.

If a user is already a member, we can link their order to their userid when they place an order and everything is fine.
If someone who isn't already a member places and order we need to create them an account at the same time, this is where the problem is:

* we really don't want the user to leave the shop and wait for a 'verification email' before we let them continue with their purchase, as there's a chance they won't come back
* However, we also don't want to just add them to the database as an unverified user and leave it at that, as there's a chance that they won't activate their account (or they provided a bad email address) and accounts that aren't activated get deleted after two days. If their account gets deleted, it will leave an 'orphan' order in the eshop orders that has not member record associated with it, which is obviousely bad.

Has anyone got any good ideas for how I can get round this? Any kind of useful discussion would be good. How does Amazon do it? etc.

Thanks.

 
The easiest way might be to just open up the registration process in a separate window, so at least they won't lose focus from your site as it's still loaded in the parent window.

I still think you need to go the route of the verification email, even just to verify the order. I don't think shoppers will leave for good, it's a very common thing to have to verify an account.


É
::
 
Thanks for the reply. It's easy for me to integrate the registration as part of the checkout process, so I won't need to pop it up in a separate window or anything.

If I send them a verification email once they have registered, I could have the activation link within it take them back to the next step in the checkout process (this would be the billing information).

I'm still not really happy about the customer having to go off and check there email though, it kind of breaks the flow of the checkout process in my opinion.
 
I agree it breaks the flow but there's probably not many options.
Why I though doing it in a new window might be an idea was that the user could go and check their email while the main window is waiting for the process to continue. maybe the user could get a password or unique ID in their email which they enter in the main window to continie the process. Something like that??

You could always let them complete the process and require validation later to confirm the purchase? Not ideal either!

With Amazon you just to right through the process. They send you an Auto-confirm email after but this just contains all details of your oder and account which you can check. You don't actually need to verify it, as far as I can remember.

É
::
 
Btw, you probably know this but aim to make the experience as easy as possible for the user. I guess this is what you are doing so I would give serious consideration to leaving out the verification process, as much as you don't like doing it, it might be the best idea. For the e-shop once you get their credit card info then that's the important thing, IMHO.


É
::
 
I might just let them go straight through without having to verify but include some text to the effect 'please make sure your email address is correct as this is where we will send confirmation of your order'

and even get them to confirm the email address in a repeated text box

 
Exactly, send the order confirmation there, tracking number etc etc Maybe to check their order status they need a reference number which will be only in the email??


É
::
 
Yeah I think that's what I'll do.

When they sign up I'll have to add them into the database marked as already being verified, as I can't risk their member record being deleted.

It's not ideal but I think it's the best way to do it.

Thanks for the useful discussion cian.
 
You could also look into different levels of verification on your database instead of a simple yes/no.

I don't know how much control you have over the whole system, or what your setup in the db is... but I would imagine some sort of

0,1,2

0 is unverified, delete in 2 days time
1 is unverified but order placed, do not delete or delete after payment received/product delivered
2 is verified member

-Rob
 
I could do something like that, the membership program is so tied in with other systems though (like forum accounts, email lists etc) it might be a massive job to make sure altering the field from yes/no to yes/no/eshop (or similar) doesn't adversly affect anything else.

It's a very good suggestion though and has certainly given me something more to consider. Thanks
 
The joys of maintenance instead of design... consider this option perhaps then... add a column to the table which is just a boolean, call it eshop_customer or something... then all you need to modify is the eshop to write to it, and the delete routine to make sure it isn't true before deleting a customer.

Should in theory not screw with other systems... (though it's possible if someone set something up strangely).

-Rob
 
and then still send the email address verification email after the new customer has completed checkout?

This could give me a problem where someone creates a new account with a fake email address in the first step of checkout, and then doesn't go through with purchase. It would lead to me having bad records in my database that wouldn't get deleted as they're marked as coming from the eshop.

I guess I could have some kind of cleanup routine that deletes members that were added from the eshop but didn't make a purchase.

Thanks for the idea.


 
ok, here's what I think I'll do:

As you suggested Rob, add the new customer to the members database as *unverified* but also mark them as having been added from the eshop (I already have a field for this)

After they have completed their purchase (or completed registration in the first step of purchase) send them an email saying 'click here to activate your account and gain access to forum, downloads etc'

While they are unverified they will not recieve any emails / have access to the forum or downloads, but they will not be deleted by the cleanup routine as they are marked as being added by the eshop.

Hopefully they will follow the link in the email and activate their account, after which they will be treated like any other user.


I'll still need to come up with a method of removing unactivated accounts that didn't complete purcahse / aren't needed for the eshop records anymore.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top