Hello everyone. I've looked all over the forum but couldn't actually find a valid solution to this issue. Perhaps from working this out a new plugin could be implemented to help others with the same issue?

Anyways, the issue is simple, I need to prevent customers from creating duplicate accounts. We implemented a Reward Points system a few months back to increase our sales and it has worked really well. The reward points system awards new accounts with 100 points (the equivalent of $5 off your first order). However, we get the "cheaters" who want to continue receiving these free points/money by registering multiple accounts in a continuous cycle of first orders. Right now we have to manually check new accounts with first orders, to make sure they're not duplicate. When these duplicate accounts are located we then notify the customers their accounts have been blocked, and their orders cancelled as they've violated our terms and conditions for our rewards program, which of course angers these customers. People have the bad habit of getting angry when found cheating. How dare we enforce our terms and conditions!

So the main question is, is it possible to create a verification system during account creation?
I'm thinking once the index.php?main_page=create_account is submitted it would go through an extra step looking for commonalities in the database, like address, name and last name, prompting the customer with a screen asking them if the account we have in the database is his/her, with two buttons, yes/no. If they click yes then they get forwarded to the login page, if they say no, the account is created.

I understand people might say no, and create the duplicate account anyways but at least it would free some redundant manual work on our end. I also understand people move and although the physical address might be the same the actual customer changes. We run with a problem of cheaters being cheaters nonetheless and use someone else's name in the family not similar and create the account anyways, but that's ok. If we can at least screen the majority and prevent duplicate accounts just for the points it's a win.

Would it be possible to create a verification layer in between and how/where should I start?

Any help to guide me in the right direction would be appreciated =)