Keeping payment costs down
I chose bank transfers to avoid card payment fees. Each order has a payment QR code and reference number.
I built Vstupko to help Czech high-school students sell prom tickets online. It started with my sister’s class, then became a product other classes could set up themselves.

Students were collecting cash, handing out paper tickets, and checking with each other which seats were sold, all while preparing for final exams. I moved it online to save them time.
I built the full app: event setup, a seat map editor, ticket sales, bank payments, and a phone scanner for entry.
Each class sets its own halls, prices, colours, and bank account. Guests choose a seat or standing ticket, pay by bank transfer, and get a PDF ticket by email once the class confirms payment.


I chose bank transfers to avoid card payment fees. Each order has a payment QR code and reference number.
The app prevents two people from booking the same seat. Unpaid orders expire so seats go back on sale. At the door, each ticket can only be scanned successfully once.
The first version ran my sister’s prom across three halls. It saved the class time, and quick, easy ticket scanning saved guests time at the door. I then rebuilt it so other classes could set up their own events without asking me to change the code.