Winner Selection
Winner Selection
This guide covers how to select raffle winners, available methods, and prize fulfillment.
Overview
Winners can be selected:
- Manually - Admin draws winners at any time
- Automatically - System draws when raffle ends (if enabled)
Manual Winner Selection
Where to Draw
Edit your raffle product → scroll down to Winner Selection metabox
Drawing Process
- Select Selection Method:
- Click Draw Winners
- Confirm the selection
- Winners are displayed immediately
Selection Methods
| Method | How It Works | Use Case |
|---|---|---|
| Standard Random | WordPress random function | Small raffles, quick draws |
| Cryptographically Secure | PHP's random_int() | High-stakes raffles |
| Random.org | True randomness from atmospheric noise | Provably fair public draws |
Standard Random
- Uses
wp_rand()function - Perfectly adequate for most raffles
- Fastest method
Cryptographically Secure
- Uses
random_int() - Higher quality randomness
- Recommended for important draws
Random.org
- Requires API key (free tier available)
- True random numbers from physical phenomena
- Provides audit trail for verification
- Best for high-value or public raffles
Setup Random.org:
- Get free API key at random.org/api
- Enter in WooCommerce → Settings → Raffle
Automatic Winner Selection
Enable Auto Draw
- Edit raffle product
- Go to Raffle Settings tab
- Check Automatically select winners when raffle ends
- Save product
How It Works
- WP Cron checks hourly for ended raffles
- When raffle end time passes:
Requirements
- WordPress cron must be working
- Site must receive regular traffic, OR
- Real cron job configured on server
Prize Fulfillment
Custom Prize
When winner is selected:
- Winner notification email sent
- Admin sees winner in product page
- Manual fulfillment required
Product Prize
When winner is selected:
- System creates $0 order for winner
- Order contains prize product(s)
- Winner receives order notification
- Admin processes/ships order normally
Order details include:
- Note indicating it's a raffle prize
- Link to original raffle
Store Credit
When winner is selected:
- System checks for store credit plugin
- If available: creates store credit
- If not: creates coupon code
- Winner receives notification with credit/coupon details
Coupon features:
- One-time use
- Expires in 1 year
- Exact prize value
Multiple Winners
Prize Tiers
When multiple winners are configured:
- Each position can have different prizes
- 1st Prize, 2nd Prize, 3rd Prize, etc.
- System draws all winners at once
- Each receives appropriate prize
Configuration
- Set Number of Winners (e.g., 3)
- Configure prizes for each tier:
Order of Selection
- System randomly selects winner pool
- First selected = 1st Prize
- Second selected = 2nd Prize
- And so on...
Winner Display
Admin View
In product edit page:
- Winner Selection metabox shows all winners
- Ticket number, holder name, position
- Date selected
- Prize awarded
Frontend
After raffle ends, product page shows:
- Winner names
- Prize won
- Winning ticket numbers (optional based on privacy)
Winner Management
Redrawing Winners
Scenario: Winner is ineligible or declines- Go to product edit page
- In Winner Selection metabox, click Clear & Redraw
- New winner(s) selected
- Previous selection logged
Winner Records
All winner data stored:
- ID
- Raffle ID
- Ticket ID
- Position
- Prize Type
- Prize Details
- Notification status
- Fulfillment status
- Selection date
Notifications
Winner Email
Recipients receive:
- Congratulations message
- Prize details
- What happens next
- Contact information
Email Customization
Go to WooCommerce → Settings → Emails:
- Raffle Winner Notification
- Customize subject, heading, content
- Enable/disable email
Best Practices
Before Drawing
- ✅ Verify raffle is ended (or ready to end)
- ✅ Check all orders are completed
- ✅ Review ticket count is accurate
- ✅ Prepare for prize fulfillment
During Drawing
- Consider recording/streaming for transparency
- Use Random.org for high-profile draws
- Have witnesses if valuable prizes
After Drawing
- Send notifications promptly
- Process prize fulfillment
- Update website/social media
- Keep records for disputes
Troubleshooting
No Winners Selected
Check:
- Raffle has active tickets
- Raffle hasn't ended (if manual)
- Number of winners ≤ active tickets
Winner Not Notified
Check:
- Email address valid
- Email not in spam
- WooCommerce emails working
- Check email logs
Random.org Not Working
Check:
- API key is valid
- API quota not exceeded
- Internet connection stable