Skip to main content

Overview

The basket is where customers collect tickets and products before checking out. When a customer adds items, those items are reserved — stock is held so no one else can purchase the same seats or limited inventory. A countdown timer shows how long the reservation lasts, and when the timer expires, items are released back to inventory for other customers. Beyond holding items, the basket is the place where customers enter discount codes, apply access codes, and (optionally) are guided through an upsell wizard before proceeding to checkout. Several company settings control basket behaviour. This page walks through each one and explains how they affect the customer experience.

Basket Timeout

Every basket has a countdown timer. When items are added, the timer starts and the customer has a fixed window to complete checkout before their reserved items are released.

Configuring the Timeout

Set the timeout duration in General Settings under Basket timeout (in minutes).
SettingValue
Default10 minutes
Maximum60 minutes
Choose a timeout that balances urgency (shorter timers reduce stock-holding conflicts) with customer convenience (longer timers suit complex orders or slow connections).

Timer Extensions

Customers can extend their basket timer during checkout if it is about to expire. Extensions are offered automatically when the timer falls below one minute.
RuleDetail
Maximum extensions3 per basket
Extension triggerTimer is within 1 minute of expiry
Total maximum hold time3 x the configured basket timeout
For example, with a 10-minute timeout, a customer who uses all three extensions can hold items for up to 30 minutes.

What Happens When a Basket Expires

When the timer reaches zero, all items are released back to inventory. The customer sees “Your basket is empty” along with one of these messages:
ScenarioMessage
All items can be recovered”Unfortunately your basket has expired, but your items are saved.”
Some items can be recovered”Unfortunately your basket has expired, but some of your items are saved.”
The customer can click Rebuild basket to attempt recovery. The system tries to re-reserve each item and reports the result:
OutcomeMessage
Full recovery”All of your previous basket items were restored.”
Partial recovery”Some of your previous order was recovered — some items may have been out of stock, so were not added.”
No recovery”The items that you’ve attempted to recover are no longer available.”
Recovery depends on current stock availability. If another customer purchased the same items while the basket was expired, those items cannot be recovered.

Basket Size Limit

You can cap the number of items a single basket can contain. Configure this in Company Settings under Basket size limit. This setting optionally overrides the default and applies only to the ticket shop — it is not enforced in box office.
LimitValue
System maximum300 items
Default display limit50 items
Custom limitSet per-company via the setting
The basket size limit does not apply to box office orders. Box office staff can add items beyond the configured limit.

Global Basket (Multi-Event Purchasing)

By default, customers can add items from multiple events into a single basket and check out once. This is called the global basket. Configure this in Company Settings under Enable global basket.

When Enabled (Default)

Customers freely add tickets and products from different events into one basket. All items appear together and are purchased in a single checkout.

When Disabled

Customers can only hold items from one event at a time. If they try to add items from a different event, a modal appears:
“You already have items in your basket from a different event. Please finish your previous purchase before trying to purchase new items.”
The modal offers two choices:
ButtonAction
Finish current orderReturns to the existing basket
Start a new orderClears the basket and starts fresh with the new event
Global basket cannot be enabled when event-level tracking pixels are configured. The toggle is disabled with the message: “Global basket cannot be turned on when tracking pixels are enabled.” Remove event-level tracking pixels before enabling global basket.

Forced Checkout

Forced checkout prevents customers from navigating away from the checkout flow once they have items in their basket, reducing abandoned carts. Configure this in Company Settings under Enable forced checkout.
RequirementDetail
AvailabilityOnly when global basket is disabled
ScopeTicket shop only — does not apply in box office
Forced checkout and global basket are mutually exclusive. You cannot enable both at the same time. If global basket is enabled, the forced checkout toggle is disabled with the message: “Forced checkout is only available when global basket is disabled.”

How It Works

When a customer with items in their basket tries to navigate to any other page, a confirmation modal appears:
  • Title: “Are you sure?”
  • Message: “Are you sure you want to leave checkout? Your selected items will be removed from your basket and may not be available later.”
ButtonAction
Leave checkoutClears the basket and navigates away
Continue checkoutStays on the checkout page

Discount Codes

Customers can enter discount codes directly in the basket to reduce their order total. The discount code field is controlled by the Show discount input setting in Company Settings. When enabled, the basket displays: “If you have a discount code, please enter it in the box below” with an Apply button.
EventWhat the customer sees
Code applied successfully”We have applied your discount code to your order.” with a Discount Applied badge
Code removedThe discount is removed and the basket total recalculates
Customers can remove applied discount codes individually if they change their mind. For creating and managing discount codes, see Discount Codes.

Access Codes

Access codes work differently from discount codes — rather than reducing prices, they unlock hidden sale items that are not otherwise visible in the shop. The access code field is controlled by the Show access code input setting in Company Settings. When enabled, customers can enter their code in the basket or via the Profile icon in the menu. The basket displays: “If you have an access code, please enter it in the box below to unlock additional items.” with an Apply button.
EventWhat the customer sees
Code applied successfully”We have applied your access code to your order.” with an Access Code Applied badge
Invalid code”The access code specified is invalid.”
Access codes unlock items — they do not apply a price discount. Once an access code is applied, previously hidden sale items become available for the customer to browse and add to their basket.
For creating and managing access codes, see Access Codes.

Upsell Wizard

The upsell wizard encourages customers to consider additional products and donations after they add items to their basket, before they proceed to checkout. Configure this in Company Settings under Enable upsell wizard.

How It Works

When enabled, adding items to the basket triggers a guided wizard that presents relevant non-ticket items such as merchandise, food and drink packages, or donation options. The customer can:
ButtonAction
Add & checkoutAdds the selected upsell items and proceeds to checkout
Skip & checkoutSkips the upsell suggestions and proceeds directly to checkout

Basket Page Layout

The basket page shows customers everything they need before checking out:
  • Title: “Your basket”
  • Each item with its name, quantity, and price
  • Running order total
  • Discount code and access code sections (if enabled)
  • Countdown timer
  • Checkout button
When the basket is empty, customers see “Your basket is empty.” with an empty basket icon.
When a customer is modifying an existing order, the basket title, checkout button, and messaging adapt to reflect that this is a change rather than a new purchase. See Order Modification Checkout for details.
Basket links allow external systems to create a pre-populated basket via the API and generate a URL that takes the customer directly into checkout. When a basket is created through the API with generateBasketUrl set to true, the response includes a startBasketUrl — a signed link that the customer can click to enter the shop with their items already in the basket. The customer then proceeds through the standard checkout flow. This is useful for:
  • Third-party integrations that build baskets on behalf of customers
  • External booking flows that hand off to the ticket shop for payment
  • Marketing campaigns with pre-configured item selections
Basket links require the Basket links feature to be enabled for your company. The link is a time-limited signed URL — if it expires, the customer sees a message that the basket is no longer available.

Settings Reference

A summary of all company settings that affect basket behaviour:
SettingLocationEffect
Basket timeout (in minutes)General SettingsHow long items are reserved
Basket size limitCompany SettingsMaximum items per basket (ticket shop only)
Enable global basketCompany SettingsAllow multi-event purchasing
Enable forced checkoutCompany SettingsPrevent navigation away from checkout
Show discount inputCompany SettingsShow discount code field in basket
Show access code inputCompany SettingsShow access code field in basket
Enable upsell wizardCompany SettingsGuide customers through upsells before checkout