Online ticket booking system.

Satoshi Araki
Published

0
  • Project creator

In one of my previous projects, I worked closely with the CTO and led the development team to build a distributed ticket booking platform. The goal was to support large ticket launches where thousands of users could try to buy tickets at the same time.

On the frontend we used Next.js, and the backend was built with NestJS. I helped design and implement both the user portal and the admin dashboard, making sure authentication and security were solid. We implemented JWT based authentication, role based access control, and also an impersonation feature so admins could troubleshoot user issues without needing their credentials.

To improve performance, we introduced Redis caching for frequently accessed data like event listings and seat availability. That reduced database load significantly and improved query latency by about 45 percent, which helped a lot during peak traffic.

On the frontend side, I focused on building a dynamic and mobile friendly interface. The checkout flow was designed as a multi step process, and the dashboard included animated visual components to make the experience more intuitive. We also implemented QR based ticket scanning, using rotating TOTP tokens so that QR codes could not be reused or forged.

For integrations, we connected the system with external services. For identity verification we used AU1OTIX for KYC, and for payments we integrated HitPay and RedotPay, ensuring the system followed PCI compliance standards and included fraud protection mechanisms.

Another component we built was a Progressive Web App for event staff using Ionic. This allowed staff to scan tickets from their phones. The app supported offline capability, and once reconnected it synced with the backend. Ticket validation used JWT secured endpoints and rotating QR codes to prevent ticket duplication.

Overall, we focused a lot on performance and reliability. After optimizing caching, queries, and system architecture, the platform achieved about 99.99 percent uptime and was able to support thousands of concurrent users during major ticket launches.