To sell mystery boxes on Shopify you need more than a product titled "mystery box." You need a pool of real catalog SKUs, live odds a buyer can see before checkout, a reveal after purchase, and an order that names the item you actually have to ship. A dedicated app does that work inside Shopify. A description field does not.
This is the merchant setup: install, add the storefront surfaces, create a box, pick SKUs, publish odds, and go live. For the product-pool model behind those steps, see How do blind boxes work on Shopify.
We make Chancey, so the walkthrough below is Chancey's path. Other Shopify mystery box apps exist; we compared them in the best Shopify mystery box apps. The job is the same wherever you run it: commit real stock, show the odds, and keep the order honest.
What you need before you create a box
A mystery box is one listing that draws from products you already sell, not a replacement for the store. Chancey amplifies demand that exists. The format fits TCG, collectibles, streetwear, sneakers, creator merch, and limited drops: a card shop building a repack, a brand putting a chase SKU next to core stock, a creator selling a merch pull. If there is no chase and no defensible floor, a cinematic reveal will not save the listing.
Do three jobs before you install:
- Pick the SKUs. Every pool item has to be a real Shopify product or variant you can ship. Slow movers can sit next to a chase piece. Junk cannot. If a buyer would be unhappy to receive the common outcome after seeing it listed, leave it out.
- Decide the format. A blind box draws one item from one pool. A mystery box has several slots, each with its own pool and odds. The format cannot be changed after the product is created.
- Price the common pull. Price the box, not a fantasy of the chase. Buyers who came up on pack rips will do this math in public.
You do not type drop-rate percentages. You commit unit counts. Four copies of a chase card in an eighty-unit pool is a four-in-eighty rate.
Setup: from install to a live box
Chancey will not let you create a sellable first box until shoppers can see the odds and open the box after checkout. Surfaces first, then the pool.
1. Install Chancey
Install from the Shopify App Store listing. As of August 27, 2026 the listing includes a free plan with $100 of box sales included, then paid plans from $9.99/month. Recurring and usage charges bill every 30 days in USD; confirm current numbers on the listing. Paid plans include a 7-day free trial.
After install, an onboarding card appears in the Shopify admin. Required steps sit under Storefront blocks and Post-purchase reveal. Optional blocks can wait.
2. Put live odds on the product page
In the theme editor, add the Blind Box Odds block to your product template and save. This is required.
The block lists every item in the pool with its image, rarity tier, drop rate, and remaining units, and it refreshes those numbers from the live pool while a buyer browses. A sold-out chase reads as sold out. Nothing is hidden except which item this purchase will produce.
Optional on the same template: Recent Pulls, which shows public reveals (prize title, rarity, image, time). Useful once you have sales. Not required to go live.
3. Add the reveal after checkout
The draw happens at reveal, not silently at checkout. In Shopify's checkout editor, add Gacha Reveal on both surfaces and save:
- the Thank you page
- the Order status page
Mark each as added in Chancey's setup card. Both are required. If you uninstall and reinstall later, re-verify these two; Shopify can drop checkout blocks on uninstall.
Optional: the Blind Box List block on the customer-account Orders page, so a logged-in buyer can see pending boxes and history. Mark it as added yourself; placement is not auto-detected.
4. Create the box and pick the format
From the Chancey dashboard, create a box. Choose blind box (one item from one pool) or mystery box (several slots, each with its own pool). The format cannot be changed after the product is created. Keep the first drop simple: homepage copy uses a four-item mystery box as an illustration, not a required size.
5. Commit SKUs and set the edition size
Pick products and variants with Shopify's picker. Each selected variant becomes a row in the pool. For each row you commit a count: how many units of that item go into this run.
Chancey checks those counts against live Shopify inventory when you save. You cannot commit eight copies of a card while holding three, and a variant cannot sit in two pools at once. For a limited run the box itself is inventory-tracked and capped, so the app will not offer more boxes than the pool can cover.
Set an edition size: how many boxes are for sale. Prize copies must cover every box in the edition. Want a rarer chase? Commit fewer units of it. That costs you a real SKU, which is why the odds are believable.
On a mystery box, build a pool for every slot. A "guaranteed rare" slot is a pool whose floor you actually like, not a label pasted on unlimited stock.
6. Name it, price it, dress the listing
Chancey creates the Shopify product from the pool. You do not pre-build a dummy product and wire it up later. After the composition is valid you give the listing a title, a price greater than zero, and optional photos.
Write the copy like a merchant, not a riddle. Name the set. State item count, condition, shipping, returns, and any age or location limits. "Up to $500 value" with no pool behind it is how this category earns complaints. The odds block will show the contents; the description should not contradict it.
7. Choose the reveal, then publish
Pick the animation template and color theme buyers see when they open the box. Effects scale with rarity tier. A replay does not change the recorded result.
On paid plans you can attach a reroll: after the reveal, the buyer can swap the pulled item for credit toward another box. Skip it on the first drop. The free plan still runs inventory-backed boxes and provably fair reveals.
On review, choose storefront availability:
- Draft: customers cannot see or buy it. Preview in Shopify, then publish when the pool looks right.
- Unlisted: purchasable by direct link, hidden from search, collections, and recommendations. Useful for a staff test or a private drop.
- Published: visible and purchasable in the Online Store and any collections you selected.
8. Buy one, open it, check the order
Place a real test order. Confirm the product page shows the full pool and live odds. Pay. Open the box from the thank-you page, then confirm the same prompt on order status.
Then open the Shopify order. After the reveal, Chancey edits it: the drawn item is added as a line priced at what the buyer paid for that box unit, the box line is reduced without restocking, and inventory for the drawn SKU decrements once. The order total does not move. Fulfillment should now name the real product, not a placeholder. If that swap fails, Chancey surfaces it on the dashboard rather than dropping it. Fix that before you send traffic.
Pull a box in the demo store (password gacha) if you want to feel the storefront side before you install.
When to use a blind box vs a mystery box
Use a blind box when the product is the single pull. TCG singles, graded slabs, one streetwear piece, one figure from a set. The buyer is here for one result and the pack-rip moment around it.
Use a mystery box when the product is an assortment. Several slots let you separate promises: one slot can be a tight, high-floor pool while another carries the chase. Buyers see every slot's odds before they pay. Extra slots are not a place to hide leftovers. A four-slot box full of unrelated dead stock is still a bad assortment, just louder.
If you are clearing slow inventory, the box still has to be a coherent offer. That playbook is how to clear slow-moving inventory without marking down every SKU. Card shops sitting on singles have a more specific version in pack ripping for card shops.
Odds, fairness, and what you actually publish
Most mystery-box listings publish a percentage in the description and hope it is true. That is a claim, not a rate. Buyers who have used online pack-rip sites will treat it as decoration, and they are right.
In Chancey you never enter a percentage. The displayed rate is computed from committed unit counts, over only the items that still have units remaining. As the pool depletes, the product page updates. When the chase is gone, its rate reads zero. The same numbers feed the draw. That single path is what "live odds" means here.
Live odds still ask the buyer to trust that their pull followed those numbers. Chancey adds a commit-reveal so they do not have to: the server publishes a hash before the draw and releases the secret after, so a buyer can recompute the result. Merchants set the pool; they do not pick individual outcomes. The protocol is on Are blind box odds fair? Buyer-verifiable draws are on by default.
Publish the pool. Make every common outcome shippable. Treat the reveal as the product. Those three rules matter more than which animation you pick.
Go live
Going live is not hitting Publish. It is a box a stranger can buy, open, and receive without a side spreadsheet.
Before you point a stream or ads at it: the odds block matches the committed pool, both post-purchase surfaces offer the reveal, a test order edited to the drawn SKU, and your returns, shipping, and "what if I hate the pull" copy are written down. Chancey does not invent a returns policy. Fair odds are not a substitute for consumer-protection rules in your jurisdiction.
The free plan pauses reveals if you hit the included box-sales cap; know that number before a drop. Current allowances live on the App Store listing. Start with a limited, named run. A box that never ends teaches customers to wait, the same way a permanent sale does.
If you want to run this on your store, install Chancey. If you first want to see why a bundle app is a different job, read how blind boxes work on Shopify.
