---
title: Events and Ticketing Software Development
description: 
url: https://miracuves.com/industries/events-ticketing
date_modified: 2026-08-17
author: miracuves
language: en_US
---

# Events and ticketing, built for the ninety seconds an on-sale actually lasts.

        
Every ticketing platform is a concurrency problem wearing a catalogue. One shipped platform already in production covering cinema, events and activities, and a custom engineering team for everything beyond it.

        
          [Talk to an engineer](https://miracuves.com/schedule-consultation/)
          [See what we’ve shipped](#shipped)
        
      

      
        
Where this starts from

        
          **1**Shipped  
platform
          **8**Operator types  
served
          **2-8*wks***Custom build,  
scoped
          **6*days***Ready-made  
launch
        
        
          Seat concurrencySolved, not mitigated
          Source codeYours, in full
          DeploymentYour infrastructure
          Support, fixes, updates60 days, 6 and 12 months
        
        
*Entry validation works offline* · because gate connectivity does not

      
    

    
      
        Custom build
        Starting from a shipped platform
      

      
Custom build - 2 to 8 weeks, scoped

      
        Inventory model
        Holds and checkout
        Payments and refunds
        Entry and settlement
        Load readiness
        On-sale
      

      
Ready-made platform - 6 working days

      
        Rebrand, deploy, live
        
      

      
Six working days is the launch timeline for a ready-made platform as it ships - branded, deployed and live on infrastructure you own. Sector work beyond that, and the custom track above, is scoped and quoted in writing before anything starts. Both tracks are the same engineering team. Every figure on this page is defined on our [facts page](https://miracuves.com/facts/).

    
  

  
    
      
        
## What a ticketing build actually contains

        
The sequence below is where ticketing platforms are won or lost. Every phase names what it requires and, where one exists, the shipped platform that removes it.

        
Ticketing is the rare consumer sector where a single class of bug is unrecoverable. Selling the same seat twice cannot be fixed with an apology and a refund, because two people arrive at the same row holding valid tickets and one of them is turned away in front of the other. Every serious design decision in this sector traces back to preventing that, and almost every platform that fails does so because concurrency was treated as a scaling concern rather than a correctness one.

        
Three of the seven phases have no shortcut, and we mark them as such below. What a shipped platform removes is the middle: the hold model, the checkout flow and the payment and refund machinery, which is where most of the build time and nearly all of the subtle correctness problems live.

      
      At a glance
        
          Phases7
          With no shortcut3
          Removed by a shipped platform3
          Fixed regardless of trackInventory model, entry, on-sale readiness
        
      
    

    

      
        **01**Weeks 1-2
        
          
### What a unit of inventory actually is

          
A reserved seat in a named row, a place in an unnumbered zone, a general-admission capacity count and a timed-entry slot are four different inventory models. Most platforms need more than one, and a system built around only reserved seating cannot represent a standing floor without a rewrite.

          
Seat maps are the part that looks simple and is not. A venue changes configuration between a concert and a conference, restricted-view seats need marking, accessible positions have companion rules, and holds for the promoter, the artist and the venue come out of inventory before a single ticket goes on sale.

          
Get this wrong and every later feature inherits the error, because pricing, entry validation and settlement all reference the unit you defined here.

          Inventory typesSeat mapsAccessibility rulesPromoter holds
        
      

      
        **02**Weeks 2-4
        
          
### Holds, concurrency and the checkout clock

          
The moment a customer selects a seat it has to become unavailable to everyone else, for a bounded time, atomically. That is the whole problem. A hold that is advisory rather than authoritative produces double sales under load, and load is exactly when it matters.

          
The clock is a product decision with a technical consequence. Too short and customers lose seats while entering card details; too long and inventory is starved during the only minutes that matter. Expiry has to be reliable rather than best-effort, because a hold that never releases is inventory destroyed.

          
Group bookings and split payment complicate this further: several people paying for one held set of seats, where a partial failure must not leave a group half-ticketed.

          Atomic holdsExpiry guaranteesQueue or waiting roomSplit payment
        
      

      
        **03**Weeks 3-5
        
          
### Payments, fees and the refund path

          
Several gateways rather than one, because a failed processor during an on-sale is lost revenue that does not come back and the event only goes on sale once. Routing between them has to be automatic rather than a configuration change made by someone who is awake.

          
Fee structure is more intricate than it appears: booking fees, venue fees, payment surcharges and taxes that differ by territory, some shown at selection and some at checkout, with rules about what may be advertised as the price. The breakdown has to survive into settlement, because each component belongs to a different party.

          
Refunds deserve design rather than an afterthought. A cancelled event means thousands of refunds at once, against payments made weeks earlier across several gateways, and the platform that handles it by hand will spend a fortnight doing so.

          Gateway routingFee breakdownMass refundsChargeback handling
        
      

      
        **04**Weeks 4-6
        
          
### Entry validation that works when the network does not

          
Gate connectivity is unreliable at exactly the venues where crowds are largest. Scanning has to work offline, deduplicate when devices reconnect, and never admit the same ticket twice across two scanners that could not see each other for twenty minutes.

          
Ticket security matters here. A static barcode screenshotted and shared is the most common fraud in the sector, and rotating codes bound to a device are the usual answer, with a documented fallback for the customer whose phone is dead at the gate.

          Offline scanningReconnect dedupeRotating codesGate fallback
        
      

      
        **05**Weeks 5-7
        
          
### Settlement to venues, promoters and partners

          
The money arrives in one account and belongs to several parties. Each sale splits between the venue, the promoter, any co-promoter, the platform fee and tax, and each partner needs a statement they can reconcile without asking you for an export.

          
Timing is a commercial decision with a cash consequence. Paying out before an event has happened exposes you to cancellation; paying out long after damages the partner relationship. Whichever you choose, the ledger has to hold the obligation clearly in the interval.

          Split rulesPartner statementsPayout timingTax handling
        
      

      
        **06**Weeks 6-7
        
          
### Discovery, loyalty and shaping demand

          
Between on-sales, the platform is a discovery product. Browse, search, recommendations and reminders decide whether a customer who came for one show finds a second, and that repeat rate is what separates a ticketing business from a payment page.

          
Loyalty in this sector works when it buys access rather than discount: presales, better seats, priority in the queue. A tiered programme built on entitlements is worth considerably more to a customer than a points balance, and costs the operator less.

          Search and browseRemindersPresale entitlementsLoyalty tiers
        
      

      
        **07**Weeks 7-8
        
          
### Load readiness, then the on-sale

          
The platform gets tested at a hundred times its normal traffic, at a moment announced publicly in advance, with no possibility of postponing. Load testing here is not a checkbox; it is a rehearsal of the exact minute, including the waiting room, the queue fairness rules and the behaviour when a gateway degrades.

          
What matters most is graceful failure. Under extreme load the platform should slow down and hold the line on correctness rather than speed up and sell a seat twice. That trade-off is decided in the architecture, not on the night.

          Waiting roomQueue fairnessRehearsed on-saleDegradation plan
        
      

    
  

  
    
      
        
## What happens between selecting a seat and owning it

        
Four steps, a clock, and the single point where a platform either holds inventory correctly or sells it twice.

        
Almost every double-sale incident in this sector traces to the same design: availability checked, then payment taken, then inventory written. Under normal traffic that reads as correct because the gap between the check and the write is small. During an on-sale the gap is where a thousand people are standing.

      
      At a glance
        
          Steps in the sequence4
          Where double-sales originateStep 2
          Correct behaviour under loadSlow, not wrong
        
      
    

    
      **The hold lifecycle**Where correctness is decided, and where most platforms get it wrong
      
      
      Selection to issued ticket
      
      SelectCustomer picks a seat
      
      HoldAtomic, bounded, guaranteed to expire. Everything depends on this.
      
      PayGateway, may fail or retry
      
      IssueTicket and entry code
      What the hold has to guarantee
      
        Exclusive from the instant of selection, not from the instant of payment
        Released reliably on expiry, because a stuck hold is inventory destroyed
        Survives a gateway timeout without either double-charging or freeing a paid seat
        Under extreme load, refuses the sale rather than granting the same seat twice
      
      
      
        Ordinary stepsWhere correctness lives
        
A ticketing platform is judged on the worst ninety seconds of its year. Designing the hold as the authoritative record of who owns a seat, rather than as a hint to the interface, is the decision that determines whether those ninety seconds are uneventful.

      
    
  

  
    
      
        
## Eight operators, eight different builds

        
Ticketing looks like one product from the outside. The operator types below share a checkout and diverge almost everywhere else, and we mark which ones a shipped platform actually fits.

        
The variable that decides the build is inventory shape and who controls it. A cinema sells the same room forty times a week against a fixed seat map. A festival sells a capacity number against a site that does not exist yet. A secondary marketplace sells inventory it does not own. Those are three different systems with a superficially similar basket.

      
      At a glance
        
          Operator types8
          Covered by a shipped platform3
          Custom builds5
        
      
    

    
      
### Cinema and multiplex chains

High-frequency, fixed seat maps, showtimes generated weekly. Concessions and loyalty attach to the booking, and the same room is sold many times a day.

1 shipped platform

      
### Live events and promoters

On-sale spikes, promoter holds and dynamic pricing. The engineering problem is concentrated into a few announced minutes rather than spread across the week.

1 shipped platform

      
### Experiences and activities

Timed-entry slots, capacity per slot and weather-dependent cancellation. Closer to a booking system than to a seat map, and frequently sold as a marketplace.

1 shipped platform

      
### Stadium and season ticketing

Season seats, renewals, member priority and resale between supporters. The rights a fan holds across a season are the product rather than any individual ticket.

Custom build

      
### Theatre and performing arts

Subscription series, patron memberships and donations alongside single tickets, with pricing structures that reward commitment rather than urgency.

Custom build

      
### Conferences and professional events

Delegate types, group registration, agenda selection and invoicing to a company rather than a card. The buyer and the attendee are frequently different people.

Custom build

      
### Secondary and resale marketplaces

Inventory the platform does not own, listings from sellers, escrow until entry is validated, and a regulatory position that varies sharply by market.

Custom build

      
### Venue-owned direct ticketing

A venue selling its own inventory without an intermediary. Lower volume, but full settlement, access control and customer data ownership sit with the operator.

Custom build

    

    
Three of the eight can start from something already running. Five are custom builds because nothing off the shelf carries the domain properly, and we would rather say that than sell you an adaptation that fights you for two years.

  

  
    
      
        
## How the work actually runs

        
Six stages, five of which are identical whether you start from a shipped platform or from an empty repository. Only the length of stage three changes.

      
      At a glance
        
          Stages6
          Identical on both tracks5
          Varies by trackStage 3 only
        
      
    
    
      
        
          01Stage
          
### Inventory model and venue configuration

Which of the four inventory types you sell, how seat maps are authored and changed, what holds exist before an on-sale and which accessibility rules apply. Everything downstream references this.

          **Ends with**An inventory model on paper
        
      
      
        
          02Stage
          
### Hold semantics and the failure contract

What a hold guarantees, how it expires, what happens when a gateway times out mid-payment, and what the platform does when it cannot honour a request. Written down before it is built.

          **Ends with**A written correctness contract
        
      
      
        
          03Stage
          
### Build checkout, payments and entry

Basket, holds, multiple gateways with automatic routing, fee breakdown, refunds and the scanning application. This is the part a shipped platform already carries.

          Length varies by track
          **Ends with**A working sale and a working gate
        
      
      
        
          04Stage
          
### Settlement, statements and reconciliation

Split rules per event, partner statements that reconcile without an export, payout timing agreed with the venue, and tax handled per territory rather than per invoice.

          **Ends with**Statements a partner accepts
        
      
      
        
          05Stage
          
### Rehearse the on-sale, including the failures

Load at a multiple of expected peak, with a gateway deliberately degraded, scanners deliberately offline and the waiting room under test. What breaks gets fixed while the date is still hypothetical.

          **Ends with**A rehearsal report, closed
        
      
      
        
          06Stage
          
### Go live on one event, then widen

A first on-sale small enough to survive being imperfect, with the team watching, before the platform carries an event that cannot be repeated.

          **Ends with**Live, on a real on-sale
        
      
    
  

  
    
      
        
## One ticketing platform already in production

        
It ships with full source-code ownership, deployed on your infrastructure under your brand. Adapt it, or use it as the reference architecture for a custom build.

        
The shipped platform covers six content verticals across cinema, live events and activities, with a customer application, a vendor portal and an operator console. Seat concurrency is solved rather than mitigated, four payment gateways route automatically, entry validation works offline and reconciles on reconnect, partner payouts are automated, and a four-tier loyalty engine sits over the top.

        
Season and stadium ticketing, theatre subscriptions, conference registration, secondary marketplaces and venue-direct systems are custom builds in our catalogue, which is five of the eight operator types above. If you are in one of those five, the honest route is a custom engagement that uses this platform as reference architecture, and we would rather say that here than let a demo imply otherwise.

      
      At a glance
        
          Platforms already shipped1
          Content verticals covered6
          Payment gateways4, routed automatically
        
      
    

    
      [BookMyShow](https://miracuves.com/bookmyshow-clone/)
    

    
## What this sector requires

    
      
### Holds that are authoritative

Exclusive from selection rather than from payment, bounded, and guaranteed to expire. A hold treated as a hint to the interface is how the same seat reaches two people.

      
### More than one payment gateway

An event goes on sale once. A processor failing during those minutes is revenue that does not return, so routing between providers has to be automatic rather than a change someone makes manually at midnight.

      
### Offline entry validation

Gate connectivity fails at exactly the venues with the largest crowds. Scanners must work disconnected, deduplicate on reconnect, and never admit one ticket twice across two devices.

      
### Mass refunds as a designed path

A cancellation means thousands of reversals at once, across gateways, against payments taken weeks earlier. Platforms without a designed path do it by hand for a fortnight.

      
### Settlement partners can reconcile

Every sale splits between venue, promoter, platform and tax. Each party needs a statement that agrees with their own records without requesting a data export from you.

      
### Graceful degradation under load

At a hundred times normal traffic the correct behaviour is to slow down and refuse rather than to speed up and oversell. That is an architectural choice made long before the night.

    

    
      
Want to open the platform and look inside before deciding?

      [See the live demo](https://miracuves.com/solutions/)
    
  

  
    
      
        
## The on-sale is the entire engineering problem

        
A ticketing platform spends most of the year comfortably idle and is judged entirely on a few minutes it announced in advance and cannot move.

        
This is what makes the sector unlike other high-traffic commerce. A retailer having a bad afternoon loses some orders. A ticketing platform having a bad ninety seconds loses the only ninety seconds that existed for that event, in public, while the promoter, the artist and several thousand customers watch it happen. There is no second attempt and no quiet recovery.

        
So we rehearse it. Load at a multiple of expected peak, a gateway deliberately degraded, scanners deliberately disconnected, the waiting room under test and the queue fairness rules exercised. Whatever breaks gets fixed while the date is still hypothetical, and the platform is built to hold correctness and shed speed rather than the other way round.

      
      At a glance
        
          Rehearsed before launchThe on-sale itself
          Tested degradedGateways and scanners
          Under extreme loadRefuse, never oversell
          First real on-saleSmall, watched
        
      
    
  

  
    
      
        
## Built custom when nothing off the shelf fits

        
The engineering practices behind the custom track in this sector, each with a team that does only that.

      
      At a glance
        
          Practices listed6
          EngagementCustom, scoped in writing
        
      
    

    
      
### Marketplace engineering

Multi-vendor inventory, listings, commission and settlement, for platforms selling capacity that belongs to somebody else. Secondary and activity marketplaces live here.

[Marketplace development](https://miracuves.com/service/marketplace-development/)
      
### Payments, splits and payouts

Multiple gateways with automatic routing, fee breakdowns that survive into settlement, mass refunds and partner statements that reconcile without a manual export.

[Payment gateway development](https://miracuves.com/service/payment-gateway-development/)
      
### High-concurrency backends

Systems whose correctness has to hold at a hundred times baseline for a few announced minutes, built so that failure is a refusal rather than an oversell.

[Microservices development](https://miracuves.com/service/microservices-app-development/)
      
### Mobile apps and scanning clients

Customer applications and gate scanners that work offline, queue their reads and reconcile on reconnect without admitting the same ticket twice.

[React Native development](https://miracuves.com/service/react-native-development/)
      
### Integration with existing systems

Venue access control, cinema scheduling systems, promoter platforms and accounting packages that already run and are not being replaced.

[API development](https://miracuves.com/service/api-development/)
      
### Demand shaping and recommendations

Discovery between on-sales, reminders that convert, presale entitlements and loyalty tiers that buy access rather than discount.

[Machine learning development](https://miracuves.com/service/ml-development/)
    

    
      
Need something this list does not cover?

      [Ask about custom work](https://miracuves.com/schedule-consultation/)
    
  

  
    
      
        
## What a build in this sector actually covers

        
Three build shapes, described by what gets engineered rather than by a metric we cannot show you the working for.

      
      At a glance
        Build shapes described3
      
    

    
      
High frequency

### Multi-screen cinema platform

Fixed seat maps sold many times daily, showtimes generated weekly, concessions attached to the booking and loyalty applied at checkout. Volume is steady rather than spiked, so the design problem is throughput and scheduling rather than survival.

      
Spiked

### Live events platform with a waiting room

Promoter holds, dynamic pricing, a fair queue and automatic routing across gateways, rehearsed at a multiple of expected peak with a processor deliberately degraded. Built to refuse rather than oversell when it runs out of headroom.

      
Distributed

### Activity and experience marketplace

Timed-entry capacity from many independent operators, weather-dependent cancellation, escrowed settlement and offline entry validation at sites with no reliable connectivity. Closest to a booking system with a ticketing gate on the end.

    

    
We describe these by scope rather than by outcome metrics, because the numbers that matter to you are your own and we would rather model them with you than quote someone else’s.

    
      
Want to speak to a reference building something comparable?

      [Request a reference](https://miracuves.com/schedule-consultation/)
    
  

  
    
      
        
## Written on this sector

        
Longer pieces on the problems above, written by the engineers who build these platforms.

      
      At a glance
        Articles4
      
    

    
      [Concurrency
### Why the hold, not the payment, decides who owns a seat](https://miracuves.com/blog/)
      [On-sale
### Rehearsing the worst ninety seconds of the year](https://miracuves.com/blog/)
      [Entry
### Offline scanning that never admits a ticket twice](https://miracuves.com/blog/)
      [Settlement
### Statements a venue can reconcile without asking you](https://miracuves.com/blog/)
    

    
Link targets resolve to the blog index while the sector pack is being assembled.

    
      
Want the whole set as a reading pack before your first call?

      [Request the pack](https://miracuves.com/schedule-consultation/)
    
  

  
    
      
        
It worked perfectly for eleven months. Then two people had the same seat on the biggest night of the year, and that is the only thing anybody remembers.

        
The failure pattern this page is built around

      
      
        
Ticketing platforms are not judged on their average day. The architecture that looks correct at ordinary traffic and the architecture that holds at a hundred times baseline are different architectures, and the difference is invisible until the moment it is not.

        
We treat the hold as the authoritative record of ownership rather than as a hint to the interface, and we rehearse the on-sale with gateways degraded and scanners disconnected, because the alternative is finding out in public on a date that cannot be moved.

        
          [Read all forty](https://miracuves.com/client-testimonials/)
        
      
    
  

  
    
      
        
## Questions ticketing buyers actually ask

        
The twelve that come up on nearly every first call, answered the way we would answer them on the call.

      
      At a glance
        Questions answered12
      
    

    
      Do we own the source code?
Yes, in full, on delivery. That is true of every ready-made platform and every custom build on this site, and it is not a paid upgrade.

      Can we really launch in six working days?
Yes, for the shipped platform as it comes - branded, deployed and live. It does not cover venue configuration, payment gateway merchant onboarding or a load rehearsal against your expected peak, all of which are scoped separately and none of which we would skip before a real on-sale.

      How do you prevent the same seat being sold twice?
The hold is authoritative and atomic from the moment of selection rather than the moment of payment, with a bounded lifetime and a guaranteed release. Under extreme load the platform refuses new holds rather than granting one seat to two people. That is a design decision rather than a tuning parameter.

      What happens if a payment gateway fails during an on-sale?
Traffic routes automatically to another. Four gateways are configured in the shipped platform for exactly this reason: an event goes on sale once, and a processor outage during those minutes is revenue that does not come back.

      Does entry scanning work without a network?
Yes. Scanners hold the ticket set locally, validate offline and reconcile when they reconnect, deduplicating so that one ticket cannot be admitted twice across two devices that were separated. Gate connectivity is unreliable at precisely the venues with the largest crowds.

      Can we sell general admission and reserved seating?
Yes. Reserved seats, unnumbered zones, general-admission capacity and timed-entry slots are four inventory types and the model carries all of them. Most operators need more than one, which is why it is decided in the first phase rather than assumed.

      How are venues and promoters paid?
Automatically, on split rules defined per event, with statements each partner can reconcile against their own records. Payout timing relative to the event date is a commercial decision we will work through with you, because paying before an event carries cancellation exposure and paying late damages the relationship.

      What happens when an event is cancelled?
Mass refunds are a designed path rather than a manual exercise: thousands of reversals across several gateways against payments taken weeks earlier, with partner settlement adjusted accordingly. Platforms without this spend a fortnight doing it by hand.

      Can you handle a waiting room and queue fairness?
Yes, and we rehearse it. A queue that is merely a holding page does not help; it has to admit people in a defensible order and hold that order under load. We test it with the gateway degraded, because that is when queues actually get stressed.

      Can we stop tickets being screenshotted and shared?
Rotating codes bound to a device are the usual answer and we build them. It is worth planning the fallback for the customer whose phone is dead at the gate, because that is a real and frequent situation and a policy decision rather than a technical one.

      Can it integrate with our existing venue systems?
Yes. Access control hardware, cinema scheduling systems, promoter platforms and accounting packages are all things we integrate with rather than replace. That work is scoped separately because it depends entirely on what you already run and on those vendors’ timelines.

      What is not included?
Payment gateway merchant onboarding, which runs on your provider’s KYC timeline. Venue hardware, network provision at gates, content licensing and your own terms of sale. Any resale or secondary regulatory position in your market is yours to confirm with counsel, and we will build to whatever it requires.

    
  

  
    
      
        
## Tell us what you are building.

        
Adapt the shipped platform, or build the ticketing system your inventory actually needs from zero. Same engineering team either way, and we will tell you honestly which one fits before you commit to anything.

      
      
        [Book a technical call](https://miracuves.com/schedule-consultation/)
        [Browse all solutions](https://miracuves.com/solutions/)
      
    

    
A first call takes about thirty minutes and covers four things

    
      **01**
### What you sell

Reserved seats, zones, capacity or timed slots, and whether you need more than one.

      **02**
### Whose inventory it is

Yours, a venue’s, a promoter’s or a seller’s. This decides the settlement design.

      **03**
### Your peak

What the biggest on-sale of the year looks like, because that is the number we build against.

      **04**
### What runs today

Access control, scheduling and accounting systems a new platform has to work alongside.

    

    
Those four answers are usually enough for us to tell you which track fits, roughly what it costs, and what your first on-sale should be so that it is survivable rather than career-defining. If the honest answer is that your inventory model needs a custom build rather than an adaptation, we will say that instead of scoping work you cannot use.
