L6 · Intermediate
Movie Ticket Booking (BookMyShow)
Problem
Design a movie ticket booking platform with seat selection, concurrent booking safety, and payment.
Requirements
- Browse movies, theaters, and show timings
- Select seats on a visual layout
- Concurrent booking — prevent double booking
- Apply coupons and calculate final price
- Booking confirmation and ticket generation
- Cancellation with partial refund
Constraints
- –Seat lock timeout: 10 minutes to complete payment
- –Max 6 seats per booking
- –Cancellation fee: 20% before show, no refund after
✓ Saved