A prize wheel with a budget you set before it starts
The worry with a prize wheel is not whether people will spin it but what it will cost. How to set chances, limits and a budget for a Magento 2 wheel before it goes live.
We use necessary cookies to make this site work. With your permission we also use Google Analytics to understand how the site is used and Google Ads cookies to measure which of our ads lead to purchases. You can accept all cookies, reject the optional ones or choose which ones to allow. Cookie policy
Choose which cookies you allow. Necessary cookies are always on because the shop cannot work without them. You can change your choice at any time with the "Cookie settings" link.
Needed for the basket, checkout, login and security. They do not track you.
Google Analytics: how many people visit, which pages they read and how they found the site. It sets the _ga cookies and sends usage data to Google.
Google Ads: measures which of our ads lead to a purchase. It sets the cookies _gcl_au and _gcl_aw (90 days) and, when you buy, sends Google the order details and a hashed form of your contact details for matching. See our cookie and privacy policies.
Scratch & Win for Magento 2: a digital scratch card that reveals a prize drawn on the server, with prize chances, budgets, play limits, e-mail capture and a personal coupon for every win. Luma and Hyvä.
One-off payment, with 12 months of updates.
No subscription or automatic renewal. Keep using the versions included in your update period. Update and licence details
Composer package commercegears/module-promo-scratch-win
Cap the number of prizes and their total value, and limit single prizes per day. When a prize runs out, the fallback prize is given.
The server draws each prize when the card is handed out and binds it to that card. Reloading shows the same card, and the code only arrives after scratching.
Visitors leave their e-mail address before scratching or after a win, and get a personal code they can apply to their basket straight away.
All features
Feature tour
01 / 05
The card opens after a delay, on scroll, on exit intent or from a floating "Scratch & win" tab. Your colours, cover image, texts and prizes.
02 / 05
Winners copy their personal code or apply it to the basket in one click. With an empty basket it is applied when the first product is added.
03 / 05
On phones the card opens as a bottom sheet and is scratched with a finger. Hyvä and Luma are both supported.
04 / 05
Enter a weight per prize and see its chance in % as you type. Limit prizes in total and per day and choose a fallback.
05 / 05
Views, cards played, prizes won per prize, codes used in orders, revenue and budget used, on the card's edit page.
Live demo
A full Magento store with the module installed, on Luma and on Hyvä. The admin demo signs you in with one click.
Compatibility
| Magento | 2.4.7 – 2.4.9 |
|---|---|
| Platforms | Magento Open Source and Adobe Commerce (one price) |
| Storefront themes | Luma Blank Hyvä |
| PHP | 8.2 – 8.5 |
| Latest version | 1.1.0 |
| composer.json requires | php ~8.2.0||~8.3.0||~8.4.0||~8.5.0 ext-json * magento/framework ~103.0.7 commercegears/module-core ^2.0 free, installed by Composer with this module commercegears/module-promo-core ^2.1 free, installed by Composer with this module magento/module-backend * magento/module-catalog * magento/module-checkout * magento/module-config * magento/module-customer * magento/module-quote * magento/module-sales-rule * magento/module-store * magento/module-ui * |
Installation
After you buy, create a Composer key in your account. Then, in the root of your Magento project:
01Add the repository and your key (once per project)
composer config repositories.commercegears composer https://repo.commercegears.com composer config --auth http-basic.repo.commercegears.com PUBLIC_KEY PRIVATE_KEY
02Install the module
composer require commercegears/module-promo-scratch-win
03Enable it
bin/magento setup:upgrade bin/magento setup:di:compile bin/magento setup:static-content:deploy bin/magento cache:flush
The last three are only needed in production mode.
Prefer a zip? Every version you are entitled to can be downloaded from My modules. More about Composer access
User guide
The user guide has its own page: how to install Scratch & Win, what each option does and how to use it in your store. Written for version 1.1.0; a copy ships with the module.
Changelog
FAQ
Something else on your mind? The developers who wrote the module answer before and after you buy.
Ask a question →Already installed it? Open a support ticket
No. The server draws the prize when the card is handed out, using your chances, prize limits and budget. The card only reveals it. The coupon code is sent to the browser after the card was scratched.
No. The prize is bound to the card. A visitor who reloads while a card is open gets the same card with the same prize again, and the play limits stop new cards.
Yes. Enter the four prizes with the weights 50, 30, 15 and 5. The Chance column shows 50%, 30%, 15% and 5% as you type. You can add a "no prize" row, free shipping, a fixed amount or a code of your own cart price rule.
Set a maximum number of prizes and a maximum prize value per card, and limit single prizes in total and per day. When a prize runs out, the fallback prize is given; when the budget is used up, the card tells visitors that all prizes have been given away.
You choose per card: cards per day per browser, per customer account, per e-mail address and per IP address, and cards per person in total.
Guests enter it either before scratching or only after a win, per card. Logged-in customers are never asked. A consent checkbox can be shown and made required; with consent the address can be subscribed to the newsletter.
Yes. The card opens as a bottom sheet on small screens and can be scratched with a finger. Phones that support it give a short vibration. You can switch the card off for phones.
The "Reveal" button reveals the card for keyboard and screen reader users, the result is announced, focus moves to the "Copy code" button, and with "reduce motion" there is no confetti and no delay.
The card shows the code with "Copy code" and "Apply to basket". With an empty basket the code is applied when the first product is added. You can also apply it automatically and send it by e-mail. With Coupon Wallet installed, the code is listed in the customer account, mini basket, basket and checkout.
No. Codes are personal and single-use by default: they work for the e-mail address or account that won them.
Yes. The card uses plain JavaScript and works on Luma and Hyvä themes. Checkout on Hyvä stores uses the Luma checkout.
Yes. Scratch & Win registers the offer type "scratch" in Promotions Core. Exit Intent can offer a card to visitors who are about to leave; the card's prizes, limits and reports apply.
On the card's edit page (views, cards played, prizes won per prize, codes used, revenue, budget used), in CommerceGears > Promotions > Overview together with the other promotion modules, and with bin/magento commercegears:scratch:report.
Support
From the blog
The worry with a prize wheel is not whether people will spin it but what it will cost. How to set chances, limits and a budget for a Magento 2 wheel before it goes live.
A digital scratch card is only fair if the prize is fixed before anyone scratches. How to run one on Magento 2 with real chances, prize limits and a budget.