I'm building a ticketing system which is mobile-first. Which means that people will need to download and register (using phone authentication like WhatsApp) in my app before they can buy tickets either on the web or through the app. The web-platform will be like WhatsApp Web wherein the user has to scan a QR code on the web-browser with his mobile phone before he can buy a ticket.
For the web-platform:
User arrives on the webpage to buy a ticket. He'll have to sign-in by scanning a QR code on the login page with the mobile app. After this, when he decides to buy a certain number of tickets for a concert/event, my Firebase backend will make sure that he cannot buy a large number of tickets(greater than 25) with a simple check on the cloud-side when he requests a ticket block. After successfully specifying the number of tickets, before he's taken to a payment page, he's asked to scan another QR code on the browser to proceed and finally, the payment is done successfully and the respective tickets are added.
For the mobile-devices:
Nothing special here. Just that he'll have to register with his OTP and won't have a 'Sign-out' feature (Much like Whatsapp) in his app. One account also can't hold more than 25 tickets. So, 25 tickets per mobile phone for 1 event will be the check.
Can you think of a way to beat this system and buy more than 25 tickets?