Overview
- An add-on is a sale item that can only be purchased alongside a parent item. When a customer adds the parent item to their basket, its add-ons become available for selection during checkout.
- Only tickets and bundles can have add-ons.
- Add-ons can be either tickets or products.
- Each add-on has its own pricing, stock, on-sale dates, and sales channel settings, independent of the parent item.
- Add-ons cannot be nested β an add-on cannot have its own add-ons.
Use Cases
Parking passes
Parking passes
A venue offers parking passes that should only be available to ticket holders. By creating the parking pass as an add-on of the admission ticket, customers are prompted to add parking during checkout rather than having to find and purchase it separately.
Meal packages
Meal packages
A festival sells meal deals alongside day tickets. Each day ticket can have its own set of meal add-ons, allowing customers to pre-order food specific to the day they are attending.
Merchandise with admission
Merchandise with admission
An event sells branded merchandise that should only be available to ticket buyers. Making the merchandise a product add-on of the ticket ensures it is only purchasable in combination with admission.
Creating Add-Ons
Add-ons are managed from the parent sale itemβs page in the admin dashboard. The Add-ons card appears on any ticket or bundle that is not itself an add-on. From this card you can:- Assign an existing item β select from tickets and products already in your inventory.
- Create a new ticket β create a new ticket directly as an add-on.
- Create a new product β create a new product directly as an add-on (requires the product sales feature to be enabled).
Add-ons inherit the parent itemβs timeslot assignment. All other settings β pricing, stock, on-sale dates, visibility β are configured independently on each add-on.
Customer Experience
Event Page
Items with add-ons display an indicator on the event page: βThis item has add-ons available to purchase during checkout.β Add-ons are not shown directly on the event page β they appear on a dedicated selection screen after the parent item is added to the basket.Add-On Selection
After adding parent items to the basket, the customer is directed to the add-on selection page. This page:- Groups available add-ons by parent item, with each parent item numbered (e.g. #1, #2).
- Displays add-ons in a grid with images and quantity selectors.
- Shows a progress bar when add-ons span multiple events (e.g. via global basket).
- Allows the customer to skip add-on selection entirely and proceed to checkout.
Each instance of a parent item gets its own independent add-on selection. If a customer purchases three tickets, they can choose different add-ons for each ticket.
Basket
In the basket, add-on items display a βPurchased with: [parent name]β label linking them to their parent. Add-on quantities cannot be edited directly in the basket β an edit button redirects the customer back to the add-on selection page.Key Behaviours
Cascading Removal
Removing a parent item from the basket automatically removes all of its add-ons. Stock for the removed add-ons is restored immediately.On-Sale Inheritance
If a parent item goes off sale, all of its add-ons are automatically treated as off sale, regardless of the add-onsβ own on-sale dates. An add-on can also be individually off sale while its parent remains on sale.Forced Minimum Quantity
Add-ons cannot use the forced minimum order quantity setting. This ensures customers are never forced to purchase an add-on they did not explicitly select.Resale
Items involved in add-on relationships are ineligible for primary resale:- A parent item that has add-ons purchased with it cannot be listed for resale.
- An add-on item itself cannot be listed for resale.
