Ticketing → Shops → [Shop Name] → Edit
The Shopping Cart handles ticket selections, reservations, and pricing in the shop entirely on the server. This enables accurate inventory control and a reliable checkout experience.
Overview
The Shopping Cart stores and processes ticket selections made in the shop before checkout. The cart runs on the server, meaning inventory is tracked in real time and reservations are secured the moment a buyer adds a ticket — not at the moment of payment.
Core Architecture
The cart runs on the server, not in the buyer's browser.
This means:
-
Tickets and seats are reserved immediately when added to the cart — not at checkout
-
Cart state is preserved even if the buyer refreshes the page or closes and reopens the browser
-
All cart operations are processed sequentially to prevent conflicts
-
Business rules and automation rules are enforced in real time as the cart changes
Immediate Ticket & Seat Reservation
Tickets are reserved the moment a buyer adds them to the cart:
-
For Best Available seat selection, the seat is claimed at the moment of selection
-
Reserved tickets count against the event inventory immediately
-
There is no risk of a ticket appearing available while already selected by another buyer
This eliminates "I selected a ticket but it was gone by checkout" support cases.
Cart Persistence
The cart is stored on the server rather than in the buyer's browser:
-
The cart survives page refreshes
-
The cart survives closing and reopening the browser
-
Buyers can return to their cart without losing their selection
This removes the risk of lost cart data due to browser issues or session timeouts.
Sequential & Atomic Processing
All cart operations are processed one at a time, in sequence:
-
Prevents race conditions where simultaneous changes result in an incorrect cart state
-
Ensures the final cart state is always correct, even during rapid changes
-
Eliminates "cart out of sync" errors that could result in incorrect orders
Navigation Protection
While a cart update is being processed, buyers cannot navigate away from the page:
-
This prevents incomplete or corrupted cart states
-
The block resolves automatically as soon as the server confirms the operation
-
This behaviour is automatic and requires no configuration
Pricing Breakdown
The shop displays a full breakdown of all costs to the buyer:
-
Product prices — the face value of each ticket or add-on
-
Service fees — per-ticket fees applied by the platform
-
Transaction fees — fees applied to the overall order
-
Discounts — active discount codes or promotions
All fees recalculate automatically whenever the cart changes, so buyers always see an accurate total before paying.
Discount Code Handling
Discount codes are processed as follows:
-
Validation — the code is validated as soon as the buyer enters it
-
Pending — during shopping, the discount is shown as pending in the cart overview
-
Application — the discount is applied definitively at checkout
This prevents pricing confusion during the shopping phase and ensures the final total is accurate before payment is made.
To control whether buyers can enter discount codes in the shop, see the Display Discount Field setting in Advanced Settings.
Performance Under High Traffic
Pricing calculations are optimised for on-sale peaks:
-
Calculations are cached and reused across identical orders
-
Processing time is significantly reduced during high-traffic on-sales
-
The shop handles simultaneous buyers more reliably under load
What This Section Controls
The Shopping Cart enables the platform to:
-
Reserve tickets and seats instantly upon selection, directly against the event inventory
-
Maintain cart state across buyer browser sessions
-
Enforce sequential, conflict-free cart operations
-
Display a real-time, accurate pricing breakdown including all fees and discounts
-
Automatically prevent navigation during cart processing to maintain cart integrity
-
Deliver reliable checkout performance during high-traffic on-sale periods
It does NOT control:
-
Ticket types or capacity (configured in Inventory)
-
Payment methods (configured in Event Settings)
-
Shop design or branding (configured in Design)
-
Discount code creation (configured in Promotions)
Important Considerations
-
Reserved tickets count against the event inventory immediately — if a buyer abandons their cart, the reservation is released after the reservation timeout expires
-
Discount codes are shown as "pending" during shopping — the final discount amount is confirmed at checkout
-
Navigation blocking is automatic and cannot be configured per shop
Functional Summary
Within the Ticketing shop, the Shopping Cart:
-
Reserves tickets and seats on the server the moment they are added
-
Maintains cart state across page refreshes and browser sessions
-
Processes all changes sequentially to prevent conflicts
-
Displays a full, dynamic pricing breakdown including fees and discounts
-
Optimises checkout performance during high-traffic on-sale periods
The server-side cart guarantees: if a ticket is in a buyer's cart, it is reserved against the event inventory.