Transparency
How pack openings work
From purchase to the card in your hand.
- 1
Choose a pack
Each pack page lists every reward tier, its probability, and the actual cards currently assigned to that tier, including which ones have already been pulled.
- 2
Purchase
Checkout is handled by Stripe. When payment is confirmed by Stripe's signed webhook, your pack is created in your account as READY TO OPEN. It is never opened automatically.
- 3
Configuration is frozen
Your purchase is tied to the exact pack configuration version that was live when you bought it. If we change odds later, your pack still uses the odds you paid for.
- 4
Open
When you press Open, your browser sends only the purchase ID. It cannot send a card, rarity, or random number.
- 5
Server-side selection
Tier selection uses a cryptographically secure random integer over the configured distribution; the physical card within the tier is chosen by Fisher-Yates shuffle with crypto-grade randomness; allocation is enforced by database row locks.
- 6
Locked allocation
Inside a single database transaction with row locks, the first still-available card in the shuffled order is allocated to you. Two people can never receive the same physical card, and one pack can never be opened twice.
- 7
Immutable record
Every open writes a permanent record with the randomization version (currently v1), configuration version, the roll, the effective distribution, and the inventory ID. Staff cannot edit it; corrections are recorded as separate adjustments.
- 8
Reveal and ship
Only then does the reveal animation play. Your card appears in My Cards with its inventory ID, and we ship the physical card according to the fulfillment rules shown on the pack.
If a tier runs out of physical inventory, that tier is excluded and remaining tiers are selected proportionally to their configured odds. This is disclosed on every pack and recorded on every open. Read the full Reward Disclosure.
