Docs Raffle for WooCommerce

Settings

Plugin Settings#

Complete reference for all Raffle for WooCommerce settings.

Accessing settings#

Navigate to: WooCommerce → Settings → Raffle

Settings are organized into six sections: General, Tickets, Display, Compliance, Print Ticket, and Emails. When the Pro addon is active, additional tabs appear for enabled features: Lucky Wheel, Winner Reveal, Entry List, Ticket Picker, Advanced Instant Win, and Reward Points. See Pro Addon documentation for details on each.

General settings#

Enable gift purchase#

Description: Allow customers to buy raffle tickets as gifts for others.

When enabled globally, all new raffle products will have gift purchasing available. Individual products can override this setting.


Generate tickets on#

Options:

  • Payment Complete: Generate when payment is received
  • Order Processing: Generate when order moves to “Processing” status
  • Order Completed: Generate when order is marked “Completed”

Default: Order Completed

Recommendation: Use “Payment Complete” or “Order Processing” for digital-only raffles. Use “Order Completed” if you need manual review.


Early draw when sold out#

Description: Automatically draw winners when all tickets are sold, instead of waiting for the scheduled end date.

Default: No

When enabled globally, all raffles with auto-draw will trigger winner selection as soon as the last ticket is purchased. Per-product override available in the Raffle Data tab under winner settings.

Requires “Automatic draw” to be enabled on the product. If both a minimum tickets threshold and early draw are configured, the threshold must be met before the early draw can proceed.


Default selection method#

Options:

  • Standard Random: WordPress random function
  • Cryptographically Secure: PHP’s random_int()
  • Random.org: True random from atmospheric noise (requires API key)

Recommendation: Cryptographically Secure for most use cases. Random.org for high-profile or public draws.


Random.org API key#

Description: API key for provably fair random selection

How to get:

  1. Visit api.random.org
  2. Create free account
  3. Generate API key
  4. Paste in this field

Free tier: 1,000 requests/day (sufficient for most users)

Tickets settings#

Ticket number format#

Options:

  • Sequential: Numbers like 0001, 0002, 0003
  • Random: Alphanumeric codes like A7X9B2
  • Alphabet (Pro): Letter+number like A01, A02 … B01, B02 (99 per group, max 2,574)

Recommendation: Sequential for traditional feel, Random for preventing guessing, Alphabet for UK competition-style formatting.


Ticket number prefix#

Description: Text prepended to all ticket numbers

Examples:

  • Empty: 0001
  • “RAFFLE-”: RAFFLE-0001
  • “2024-”: 2024-0001

Tip: Keep it short (3-6 characters) for readability.


Starting ticket number#

Description: First ticket number for sequential format

Default: 1

Use case: Starting from 1001 for “bigger” looking numbers.


Ticket number padding#

Description: Minimum number of digits for sequential ticket numbers.

Default: 4 (e.g., 0001)

Display settings#

Show countdown#

Description: Display countdown timer on raffle product pages.

Default: Yes


Show countdown on shop pages#

Description: Display a compact countdown badge on shop and archive pages.

Default: No

When enabled, a small countdown badge appears on raffle product cards in shop/category pages.


Show progress bar#

Description: Display ticket sales progress bar on product pages.

Default: Yes

Only visible when a maximum ticket limit is set.


Show participants count#

Description: Display the number of participants on the product page.

Default: Yes


Show tickets sold#

Description: Display the number of tickets sold on the product page.

Default: Yes


Show prize value#

Description: Display the prize value on the product page.

Default: Yes


Instant Win Winners Display#

Options:

  • Always show: Winners appear immediately (default)
  • Only after raffle ends: Winners are hidden while the raffle is still active
  • Never show: Instant winners are never displayed on the product page or winners shortcode

Default: Always show

Controls when instant win winners are visible on the frontend. “Only after raffle ends” is useful when all instant prizes are claimed before the raffle sells out, to avoid discouraging further purchases. Winners still receive their notification email regardless of this setting.


Frontend accent color#

Description: Customize the accent color for all raffle UI elements on the frontend, including the countdown timer, progress bar, prize badges, tabs, and buttons.

Default: #7c3aed (Purple)

All hardcoded color instances use CSS custom properties, so changing this one value updates the entire raffle appearance.

Guest access#

Options:

  • Allow guests (current behavior): No restrictions (default)
  • Block — show “Login required” message: Guests see a login prompt on the product page instead of the add-to-cart form
  • Force login — redirect to login before add-to-cart: Guests are redirected to the login/my-account page when they try to add a raffle to cart

Default: Allow guests


Block mixed checkout#

Description: Prevent raffle tickets and non-raffle products from being purchased in the same cart.

Default: No

When enabled, adding a raffle product to a cart that already contains regular products (or vice versa) is blocked with a message asking the customer to complete their current order first.

Compliance settings#

These settings control the skill-testing question and free entry features. See Compliance & Privacy for detailed documentation.

Enable skill-testing question#

Description: Require customers to answer a skill-testing question before adding a ticket to cart.

Default: No

When enabled, a random question from the pool is shown on each page load.


Skill-testing question pool#

Description: A repeater field to manage the pool of questions.

Each question includes:

  • Question text
  • Type: Text input or Multiple Choice
  • Correct answer
  • Choices (for Multiple Choice, one per line)

Click ”+ Add Question” to add more. Click “Remove” to delete a question.


Time limit (seconds)#

Description: Maximum seconds a customer has to answer the skill-testing question. Leave empty or 0 for no limit.

Default: Empty (no limit)

When set, a countdown timer appears next to the question. If time runs out, the answer inputs are disabled and the customer must refresh the page to get a new attempt.


Max attempts per product#

Description: Maximum wrong answers before the customer is locked out of a raffle. Leave empty or 0 for unlimited.

Default: Empty (unlimited)

Tracked per customer email (or IP for guests) and product. After exceeding the limit, the add-to-cart form is disabled with a message.


Multiple choice display#

Options:

  • Radio buttons (default): All options shown at once
  • Dropdown select: Options shown in a <select> dropdown

Default: Radio buttons

Radio buttons are better when there are 2-4 choices. Dropdown saves space when there are many choices.


Enable free entry route#

Description: Show a “Free Entry” tab on the product page with alternative entry instructions.

Default: No


Free entry instructions#

Description: Default text shown in the Free Entry tab.

Supports the [Your Address] placeholder, which is automatically replaced with your WooCommerce store address (from WooCommerce → Settings → General).

Primary color#

Description: Primary accent color used on PDF tickets.

Default: #7c3aed (Purple)


Description: Custom text displayed at the bottom of PDF tickets.


Badge text#

Description: Text displayed on the ticket badge area.

Email settings#

Email toggles#

The Emails section provides quick toggles for all raffle-related emails:

SettingEmailDefault
Ticket ConfirmationSent to purchaser when tickets are generatedEnabled
Gift NotificationSent to gift recipient when tickets are generatedEnabled
Winner NotificationSent to winner when selectedEnabled
Admin Winner AlertSent to admin when a winner is drawnEnabled
Admin Draw FailedSent to admin if an automatic draw failsEnabled
Prize ClaimedSent when a winner claims their prizeEnabled
Ticket RefundedSent to ticket holder when their tickets are refundedEnabled
Admin Mass Refund SummarySent to admin after a mass refund completesEnabled

Customizing emails#

For full email customization, go to WooCommerce → Settings → Emails and find the raffle-specific emails:

For each email:

  • Enable/Disable: Turn email on/off
  • Subject: Email subject line
  • Heading: Email heading text
  • Additional Content: Custom message

Per-product settings#

These settings are configured on each raffle product in the Raffle Settings tab.

Date & time#

SettingDescription
Start DateWhen ticket sales begin
Start TimeTime sales begin (HH:MM)
End DateWhen ticket sales end
End TimeTime sales end (HH:MM)

Notes:

  • Leave start date empty to start immediately
  • Leave end date empty for no expiration
  • Uses site timezone

Ticket limits#

SettingDescription
Maximum TicketsTotal tickets available
Max Per CustomerLimit per customer email

Notes:

  • Empty = unlimited
  • Per customer limit applies across all orders
  • Gift tickets are exempt from per-customer limits

Features#

SettingDescription
Allow Gift PurchasesOverride global gift setting (Use global / Yes / No)
Auto DrawAutomatically select winners at end
Skip Cart PageRedirect to checkout after add-to-cart
Ticket SuffixText appended after ticket numbers

Winner settings#

SettingDescription
Number of WinnersHow many winners to draw (1-10)
Unique WinnersPrevent same person from winning multiple prizes

Instant Win settings#

SettingDescription
Enable Instant WinEvaluate tickets at purchase time
ModeProbability or Guaranteed interval
Win Probability (1 in N)Probability mode: chance denominator
Win Every N TicketsGuaranteed mode: interval size
Max Instant WinnersMaximum total instant winners (empty = unlimited)
Require Instant PaymentAuto-hide offline gateways

See Instant Win for full details.

Payment gateway restrictions#

SettingDescription
Disabled Payment GatewaysMulti-select of gateways to hide for this raffle

Prize configuration#

SettingDescription
Prize TypeCustom, Product, or Store Credit
Prize DescriptionText description of prize
Prize ValueDisplay value (for Custom type)
Prize Product(s)WooCommerce products (for Product type)

Compliance overrides#

SettingOptionsDescription
Skill-Testing QuestionUse global / Yes / NoOverride global skill question toggle
Question SourceGlobal pool / CustomUse global pool or custom product question
Custom QuestionTextProduct-specific question (when source is Custom)
Question TypeText / Multiple ChoiceAnswer input type
Correct AnswerTextThe correct answer
ChoicesTextareaMC options, one per line
Free Entry RouteUse global / Yes / NoOverride global free entry toggle
Free Entry TextTextareaCustom free entry instructions

Default values#

If not explicitly set:

SettingDefault
Ticket FormatSequential
PrefixEmpty
Starting Number1
Max TicketsUnlimited
Max Per CustomerUnlimited
Gift PurchasesDisabled
Auto DrawDisabled
Number of Winners1
Prize TypeCustom
Generate Tickets OnOrder Completed
Auto-Close Sold OutYes
Skill-Testing QuestionDisabled
Free EntryDisabled

Setting recommendations#

For charity raffles#

Ticket Format: Sequential
Prefix: "CHARITY-"
Max Per Customer: 20
Gift Purchases: Enabled
Prize Type: Custom
Number of Winners: 3

For Canadian compliance#

Skill-Testing Question: Enabled
Free Entry Route: Enabled
Question Pool: 3-5 math questions
Free Entry Text: Mail-in instructions with [Your Address]

For store promotions#

Ticket Format: Random
Prefix: Empty
Max Tickets: 500
Max Per Customer: 5
Gift Purchases: Disabled
Prize Type: Product
Auto Draw: Enabled

For high-stakes draws#

Ticket Format: Sequential
Random.org API: Configured
Max Tickets: Limited
Max Per Customer: 1
Gift Purchases: Disabled
Prize Type: Custom (document externally)

Settings migration#

When updating the plugin:

  • All settings are preserved
  • New settings get default values
  • Check release notes for new options

Troubleshooting settings#

Settings not saving#

  1. Check user permissions (manage_woocommerce required)
  2. Clear browser cache
  3. Check for JavaScript errors
  4. Disable conflicting plugins

Settings not applying#

  1. Clear WooCommerce transients
  2. Refresh product page
  3. Check individual product overrides

Random.org not working#

  1. Verify API key is correct
  2. Check quota at random.org dashboard
  3. Test with Standard Random method first