I am looking to build a sweepstake system that would send a unique code to the user every time they submit their email. What would be the best add ons to use to accomplish a system like this? Maybe safecracker could create entries and I could use the entry id & add another generic number to it creating the unique code eg: AUGCOMP23. Then maybe use Postmaster to send the unique code to them? Am I heading on the right track? How would I limit the amount of times they could enter?

  • Does this add-on help? it's called Redeemer devot-ee.com/add-ons/redeemer
    – Samsull
    Aug 29, 2013 at 14:06
  • Thanks, I did look at that but the addon is not exactly what I need. Also see its quite an oldie and the download link doesn't work.
    – Thomas K
    Aug 29, 2013 at 14:14
  • I'd use a random number plugin (eg. Low Random) and Safecracker should be easy enough to limit, using author_only="yes" and {if} conditionals.
    – Samsull
    Aug 29, 2013 at 14:40
  • 1
    I wrote Redeemer, but have no plans to port it to 2.x. Unless you write a custom module to handle this functionality I would highly recommend against cobbling together other EE add-ons to achieve this feature. This should be a custom add-on or don't even use EE at all, but instead a custom app. I've seen what happens when people try to use only existing EE add-ons because they don't know PHP to build a site that shouldn't even have been done in EE to begin with, and its ugly (and potentially insecure). Aug 29, 2013 at 16:43
  • Hi Brian, I see what you mean. Let me try redeemer out on 1.7.3 and see if it could work for me. Are you open to custom development on the module?
    – Thomas K
    Aug 30, 2013 at 9:51

1 Answer 1


What about the native mailing list? You can only subscribe once per list and each sweepstake would be separated, meaning the same email could enter different sweepstakes?

Are you looking at creating members for every email? Or is it a one off?

There are some plugins in Dev:otee that generate random strings that you could use if SafeCracker is the way forward.

Or you could use Profie:edit (or User etc) and create a Matrix field. When a member fills in the 'application' to sweepstake, a row is added to the Matrix which you can then use to check against to see if they have entered already.

The latter is probably the way I would go so you can view a member and see exactly what sweepstakes they have entered.

Sounds interesting. I looked in to something a little while ago. I'd advise you to checkout the law in your country regarding swepstakes. Depending on your idea, you don't want to get into trouble. In the UK a sweepstake MUST be free to enter. Or its classed as gambling I believe.

Good luck

  • Thanks for this! The Matrix field one could work too. I was thinking they could login and register once, then using the same email enter the competition and limit it so they could enter once a day to increase their chance of winning. Once the comp is over we would start over and those same people could enter again. My client will handle all the legal side of things, I just need to figure out how to build it!
    – Thomas K
    Aug 29, 2013 at 14:23
  • Freeform could also be an option, has all the built in email capabilities plus it accepts 3rd party fieldtypes.
    – Thomas K
    Aug 29, 2013 at 14:29
  • Postmaster is a perfect companion to all those add-ons. It works with Safecracker, Zoo Visitor, Profile:edit, and any other hook you need. I even have a new email service that works with Matrix fields for email lists sent with Mandrill. The API is built for this exact purpose. You can send an email for anything, at anytime, and build your own solution with the API. It has literally 100's of possibilities out of the box, and the sky is the limit if you know PHP. Email [email protected] if you have any questions. Aug 29, 2013 at 14:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.