Trading cards & hobby shops
Your allocation is fixed, so a first-come drop is gone in seconds and listed on resale sites by morning. You would run a raffle instead, but tallying entries and mailing winners by hand eats the day.
Bonafan is in beta and under active development. Features and specifications may change without notice. Feedback and bug reports: bonafan098@gmail.com
TCG / SNEAKERS / FIGURES / LIMITED COLLABS
A raffle sales app for Shopify
A raffle sales app for Shopify. Drop the race and speed stops mattering, which is the only thing a bot is good at. On top of that, Bonafan turns each customer's purchase history into a fan score and lifts the odds for people who keep buying from you. Reseller entries are removed at draw time. And yes, there is still a separate pool where a first-time customer wins on equal odds.
The good parts
Starts at zero
Nothing is charged during the beta
One minute to set up
After that it runs itself
Regulars win more
Scored from their purchase history


Dashboard / Fan entry page
how it works
Create one raffle. After that you only come back for the results.
Email only!
Fans enter with just an email address. An entry counts only after pressing the confirm button behind the emailed link, so bots can't flood the raffle. One-click entry with a store account (App Proxy) is also supported.
Works day one!
Purchase count, total spend and retail purchases become a fan score, frozen at the moment of entry so it can't be gamed afterwards.
Provably fair!
Winners are picked with cryptographic randomness. A weighted pool rewards loyal fans, and a separate equal-odds pool keeps newcomers in the game.
Paid automatically!
Each winner gets a checkout only they can open, delivered as an invoice email from your store. Reminders before the deadline and runner-up promotion after it are automatic.
FOR LIMITED DROPS
The manufacturer sets your allocation. The collab contract caps the run. Neither number moves for you. Sell that on a first-come basis while demand still exceeds it, and the fastest buyer is not a person. It is a bot. Bonafan is built for that kind of sale.
Your allocation is fixed, so a first-come drop is gone in seconds and listed on resale sites by morning. You would run a raffle instead, but tallying entries and mailing winners by hand eats the day.
Your allocation will not grow. Every drop becomes a speed contest against bots. The regulars who buy from you all year never get a pair, and they leave quietly.
Limited runs and event exclusives are never reprinted. The high price tag makes them prime resale targets. Every release ends with you deciding what to do about the orders above the cap.
The contract fixes the run, so making more is not on the table. Every release fills your mentions with fans who could not buy, and that enthusiasm is what wears down.
If you can make more, you do not need a raffle. Print-on-demand and made-to-order already sell to everyone who wants one. Bonafan earns its place only when the stock genuinely runs out.
BEFORE / AFTER
Most stores already running raffles collect entries in a form, sort them in a spreadsheet, then email winners one at a time. Bonafan takes that chain off your hands.
BONA FIDE = GENUINE
Not a tool for blocking.A tool for delivering.
Reject an entry at the door and the reseller learns exactly where the wall is. They come back with a different account. So Bonafan lets every entry through and removes the bad ones quietly at draw time. There is nothing to learn from, and nothing to argue about in public.
Paid automatically!
Winners are sent straight to a checkout only they can open, from your store.
Each winner gets a checkout only they can open, delivered as an invoice email from your store. Reminders before the deadline and runner-up promotion after it are automatic.

features
A fan with score 20 is about 5× more likely to win, while score-0 entries can still win. Nobody wins twice, and the boost and newcomer quota are adjustable per raffle.
Suspicious entries are accepted at the door and removed at draw time. Resellers never learn they were caught, so there is nothing to work around.
Fan scores are built from your last 60 days of orders the moment you install, so they work on day one. New orders add to them and cancelled ones are deducted.
Winners get their checkout link as an invoice email from your store's own address (even if it leaks, nobody else can buy), an automatic reminder before the deadline, and missed slots pass to runners-up.
After each draw, won/lost tags are added to entrants' customer records automatically. Use Shopify Email (10,000 free emails/month) to send loser announcements and priority invites for your next drop.
Entries are confirmed by email, and throwaway-address aliases count as the same person. Rate limits are built in, with optional Cloudflare Turnstile bot verification.
Fan scoreBuilt from purchase count, retail purchases and total spend. It keeps growing between drops.

SPECIFICATION
SHOPIFY APP
With a Shopify store, you can run your first raffle the same day.
Replace the end of the install link with your store domain, open it, and approve the permissions in your Shopify admin.
Order data sync is configured on approval, and fan scores are built automatically from your last 60 days of orders.
Create a raffle in the dashboard and share the entry page URL with your fans. Entries are open.
Install link
https://bonafan-worker.bonafan098.workers.dev/shopify/install?shop=your-store.myshopify.com
BETA — IN DEVELOPMENT
We are building Bonafan together with a small group of stores. Before installing, please note the following.
Nothing is charged until paid plans launch. Limits do start at the Free tier though: 100 entries a month, 20 winners, and no email-verified entry yet. Tell us if that is too tight and we will lift them. We will announce billing in advance and give existing stores a transition period.
The dashboard, entry pages and plan limits may change without notice based on feedback. Raffle results and entry data are preserved across changes.
The raffle engine and winner checkout are built and tested for production sales, but please run a one-winner test raffle end to end before your first drop.
Tell us what kind of raffle you want to run, or what is confusing. That is what shapes the next release.
Questions about setup, bug reports and feature requests are welcome by email. We usually reply within two business days.
No setup fee and no monthly fee to start. Creating a raffle takes about a minute. Both the entry page and the dashboard work in English and Japanese.