QR Prize Claim System
A high-volume QR gift distribution platform: 20,000+ unique codes generated, 22,000+ prizes claimed, zero data conflicts.

Context
An event client planned a large-scale gift giveaway: every guest receives a printed QR code, each code is pre-assigned a specific prize, and guests claim their prize on their phones during the event.
The challenge
The whole event happens in a short window. Thousands of guests scan at the same time, every code must resolve to exactly one prize, and a double claim or a mismatched prize is immediately visible to a person standing at a counter. There is no second chance to run the event again.
The decisions
We treated claim integrity as the core product, not a feature. Every claim runs through a validation engine that checks the code, its assigned prize and its claim state in one atomic step.
The admin side had to be practical at scale, so we built bulk prize assignment and batch QR generation instead of one-by-one tooling.
Guests only ever see a mobile claim portal designed for a crowded venue: scan, see your prize, claim it, done.
The engineering
React front ends for both the admin panel and the claim portal, a Node.js REST API, and MySQL with transactional writes guarding claim state. QR generation ran as batch jobs producing over 20,000 unique codes. Deployed on a VPS with Nginx and PM2 and load-tested against burst traffic before the event.
The outcome
The event ran on the platform without incident. More than 22,000 prizes were claimed against the generated codes with zero data conflicts recorded.
- Unique QR codes generated
- 20,000+
- Prizes claimed
- 22,000+
- Data conflicts
- 0
Built with
- React
- Tailwind CSS
- Material UI
- Node.js
- MySQL
- REST API
- Nginx
- PM2
Services on this project
Have a similar challenge?
Tell us about it. We reply within 24 hours with how we would approach it, and what it would take to ship.