News · New this week

Seat locking: how ticket apps stop double bookings

A waiting room, a seat lock with a timer, then payment. That is how a typical ticketing app keeps two fans from getting the same seat.

Most people think the fastest finger wins a seat. It doesn't. When a Samay Raina show goes on sale and everyone taps at once, speed isn't what decides who gets a seat. The order of a few simple steps does.

Here's the flow a typical ticketing app uses, and why each step is there.

The waiting room keeps the rush small

Everyone arrives at once, so the first job is to stop everyone from hitting the seat map at the same time. A waiting room puts fans in a queue and lets them in, in small batches.

That's the easy part. It limits how many people are choosing seats at any moment, but it doesn't stop two people in the same batch from reaching for the same seat. Something else has to do that.

The seat lock answers the double booking question

When you tap a seat, it locks to you alone. One owner, no sharing. If someone else in your batch taps the same seat a moment later, it's already taken from their point of view.

The lock also comes with a short timer. It expires on its own. That matters because a lock with no expiry would let one person who wanders off hold a seat forever. The timer means a held seat is only held for a short window.

The reel asks whether you'd hold seats for five minutes or less. There's no single right answer. A shorter hold frees seats faster. A longer hold gives people more time to pay. It's a tradeoff you'd tune for your own app.

Payment decides what gets confirmed

After the lock, the fan goes to payment, UPI or card. This is the screen that spins.

If payment fails, the lock is released and the seat returns to the pool. Someone else can then pick it up. Nothing is lost and nothing stays stuck.

Only paid seats reach the booking database as confirmed seats. That's the rule that keeps fans from clashing. A seat is a held claim until money lands, and a confirmed booking only after.

Putting it together

Fans arrive and wait in a queue, and small batches get in. Each seat tap creates a lock with one owner that auto-expires. Then payment succeeds or fails. Success becomes a confirmed seat, and failure puts the seat back.

Each step has one job. The queue controls volume. The lock controls ownership. The timer controls how long ownership lasts. Payment controls what becomes permanent.

If you're designing something like this, sketch those four stages on paper and check what happens at each failure point, especially the timer running out and the payment failing. Then send the diagram to the friend who thinks the fastest finger wins the seat.

  • #systemdesign
  • #bookmyshow
  • #ticketbooking
  • #samayraina

More reels

All news →