Buyer purchase journey
Learn the complete flow your buyers go through so you can optimize their experience and resolve their questions.
Flow overview
- Buyer arrives at the event page
- Selects tickets (and seats if numbered)
- Adds optional add-ons
- Completes personal information
- Pays through the payment processor
- Receives tickets via email and on screen
Important: The entire process is login-free. Buyers don't need to create an account to purchase. This reduces friction and increases conversions.
Step 1: Event page
The buyer arrives at the event page, usually from:
- A promotional link you shared
- Social media
- Internet searches
- Your website
- A checkout link sent by the chatbot
On the page they see:
- Event banner
- All information (date, venue, description)
- A floating "Buy" button that follows them while browsing
When they click "Buy", the checkout modal opens.
Chatbot checkout links: When a buyer arrives via a checkout link generated by the chatbot, the checkout modal opens automatically with the relevant ticket type and quantity already pre-selected. The buyer goes directly to reviewing their selection — no need to manually find or select the correct ticket. This significantly reduces friction for buyers coming from bot conversations.
Optimization: The event page is optimized for all devices and browsers. It works perfectly even on 3G or slow internet connections, ensuring the fastest and easiest purchase process possible.
Step 2: Ticket selection
Events without numbered seats
The buyer sees a list of all available tickets, each with:
- Ticket name
- Price
- Quantity selector
Live availability refresh: While the buyer is choosing tickets, the checkout automatically re-fetches availability and prices for the selected date in the background. This means stock and price changes are reflected without requiring a page reload. If a ticket or rate the buyer had in their selection is no longer available, it is automatically removed from the cart — preventing errors at checkout.
Restrictions applied automatically:
| Setting | Behavior |
|---|---|
| Minimum order | Can't select fewer (e.g., minimum 2, can't buy 1) |
| Maximum order | Can't select more than the per-purchase limit |
| Stock | Only sees available quantities |
| Block multi-ticket type purchases | If enabled, can only buy one ticket type per purchase (but multiple units of that type) |
Abandoned cart recovery: pre-filled selections
When a buyer clicks a link from an abandoned cart recovery email, the checkout modal automatically pre-fills the ticket type and quantity they had previously selected. This means the buyer arrives at checkout with their selection already in place and can complete their purchase in fewer steps.
For organizers: This reduces friction for buyers who were interrupted mid-purchase and improves conversion on your recovery campaigns.
Date selection for events with many dates
When an event has a large number of dates, buyers see a monthly calendar view instead of a flat list. This layout is applied automatically — you don't need to configure anything.
The calendar works as follows:
- Month navigation arrows let the buyer move between months
- Available dates are highlighted so the buyer can quickly spot when the event is on
- The buyer clicks a highlighted date to select it and proceed with their purchase
This makes it much easier to browse and find a specific date when there are many options.
Events with numbered seats
The buyer sees the seating map of the venue. To select:
- Click on a section of the map to zoom in
- Click on the seat/table/area they want
- If there are multiple rates, a rate selection modal appears — on mobile, this modal opens above the checkout panel so it's always visible and easy to interact with
- Repeat to select more seats
On mobile, the checkout experience uses a bottom sheet panel. When a seat with multiple rate options is selected, the rate selector appears above that panel so it's never hidden behind it.
Seating map experience improvements:
- The map automatically fits the full venue into view when it loads, so buyers immediately see the complete layout without having to zoom or pan manually.
- Mobile panning is more precise — the map no longer drifts when a user taps to select a seat at the default zoom level, making seat selection more reliable on phones and tablets.
- Seat section labels display correctly in the checkout summary and in the per-ticket information forms, so buyers always see accurate seat information before completing their purchase. On mobile, buyers can also use a two-finger pinch gesture to zoom in and out on the seat map, making it easier to navigate and select seats on touchscreen devices. A confirmation modal also appears to verify the selection.
Filtering seats: The checkout panel includes filters for category, price, and section, so buyers can quickly narrow down seats to a specific part of the venue.
Single-category restriction alert: If a buyer's selection conflicts with a single-category restriction, a clear alert is shown directly on the map explaining why the selection cannot be completed. This helps buyers understand what to adjust before trying again.
Seats with multiple pricing options behave consistently with the rest of the checkout flow, so the experience feels familiar throughout.
Near-instant map response: When a buyer hovers over or interacts with a ticket option, the system silently prefetches the best-available seat suggestions in the background. This means the seating map responds nearly instantly when they click the add button, with no noticeable wait.
Mobile seating map improvements:
- Tap-to-zoom on the seating map is now snappier — zooming in on a section feels more immediate on phones and tablets.
- The order summary drawer (the slide-up panel showing your current selection) now correctly appears above area-selection and rate-picker overlays, so those overlays no longer cover the summary while it is open.
- When the order summary drawer is open, the seating map and its controls are hidden for a cleaner, less cluttered experience.
Order summary — general admission areas
When a buyer selects seats from multiple general-admission (GA) areas that share the same ticket type, the order summary lists each area on its own line. For example, if a buyer picks from two GA areas with the same ticket type, the summary shows each area separately (e.g. "2 × PALCO 1" and "1 × PALCO 2") rather than combining them. This gives buyers a clear breakdown of exactly what they are purchasing before confirming.
Applying discounts
If you configured discount codes, the buyer will see a button "Apply your coupon here" above the tickets.
When clicked:
- They enter the discount code
- The system validates if it's valid
- If valid, they see the updated price with the discount applied
Sharing a link with pre-applied discount:
As an organizer, you can share a link that already has the discount applied:
- Go to Events → [Your event] → Discounts
- Click the three dots on the discount you want to share
- Click "Copy URL"
When someone opens that link, the discount will already be applied automatically in checkout.
Note: Discounts apply only to tickets, not to add-ons.
Continue
If the selection is valid, the button says "Continue" and they can proceed.
If there's an error (e.g., nothing selected, invalid selection), the button is disabled and shows the error message.
Step 3: Add-ons (optional)
If you configured add-ons for the selected tickets, the buyer sees them after choosing tickets. The add-ons section uses a clean, spaced layout that makes each available option easy to read and select. If you configured add-ons for the selected tickets, the buyer sees them after choosing tickets under the heading "Your add-ons".
Selection works the same as unnumbered tickets:
- List of available add-ons
- Quantity selector for each
- Minimum/maximum/stock restrictions
Add-ons are optional. The buyer can continue without selecting any.
Step 4: Buyer information
The checkout form highlights any incomplete or invalid fields with a clear error border. This error styling stays visible even when a field is focused, so buyers can immediately see what needs to be corrected without losing track of the problem.
Normal mode
The buyer completes:
- First name
- Last name
- Phone (optional depending on configuration)
- ID/Document (required only when enabled by your brand billing setup)
- Confirm email (can't paste, must type it)
- RSVP (if you configured custom questions)
- Checkbox accepting terms and conditions + refund policy
"Info per ticket" mode
If you enabled "Ask for buyer information per ticket" in event settings, the process has two parts:
Part 1 - Buyer data: Complete the same fields as normal mode (name, last name, email, etc.)
Part 2 - Each assistant's data: For each ticket purchased, they must complete the attendee fields you enabled in checkout configuration (for example: first name, last name, phone, ID/document, birthdate):
- Assistant's first name
- Assistant's last name
- Assistant's phone (if enabled)
- Assistant's ID/Document (if enabled)
- Assistant's birthdate (if enabled)
- Assistant's email (must be unique for each assistant)
- RSVP (if you configured questions)
What happens with emails? Each assistant receives their own ticket to their email. If someone buys 5 tickets, they must enter 5 different emails and each person receives their ticket individually.
Tip: For the first assistant there's a checkbox "Use my data" that auto-fills with the buyer's information.
For organizers: This mode is excellent for building a contact database for email marketing. However, it adds friction to checkout. If you don't need each assistant's data, we recommend leaving it disabled to maximize conversions.
Step 5: Reservation and payment
Ticket reservation
Tickets are reserved when the buyer clicks "Continue" after completing their information, not before.
This means:
- Selecting tickets doesn't reserve them
- Other buyers can "beat them" to the tickets if they complete first
If tickets are no longer available when continuing:
- They see an error message
- They must select other tickets
- Their personal data stays saved
Reservation time
Once reserved, the buyer has 10 minutes to complete payment.
During these 10 minutes:
- The tickets are locked for that buyer
- Other users cannot purchase those tickets
- They appear as "unavailable" to others
If 10 minutes pass or payment fails:
- The reservation expires
- Tickets are released automatically
- Other users can purchase them
- The original buyer must start over
Mobile checkout experience for seated events
On mobile, the seated-event checkout uses a bottom panel layout with improved styling throughout: themed fonts, clear section headers, and a smooth scroll area for the seat list. The submit action is anchored in a sticky footer at the bottom of the screen, so buyers can always confirm their purchase without scrolling.
Payment processors
After clicking continue, after 3 seconds the buyer is redirected to the payment processor based on the region:
Argentina → Mercado Pago
If the buyer has the Mercado Pago app installed on their phone, it opens automatically and they can pay with a single tap using their account. If they don't have the app or are on desktop, the Mercado Pago web checkout opens where they can:
- Pay with account balance
- Use saved cards
- Add a new card
- Pay without a Mercado Pago account (option for those without an account)
USA and Stripe countries
The Stripe checkout opens where they can pay with:
- Apple Pay / Google Pay
- Credit/debit cards
- See all accepted methods
Other LATAM countries → dLocal
The payment form appears on the same site (no redirect). The buyer enters their card details directly.
Rate limit errors
If a buyer makes too many checkout attempts in a short period, they will see a clear error message letting them know they need to wait before trying again. This prevents silent failures and helps buyers understand exactly what happened.
Step 6: Purchase result
Successful purchase
The buyer sees:
- Success message
- Purchase summary
- "Download tickets" button to get the QR codes
- QR codes also shown on screen (can screenshot)
Additionally, they receive an email with:
- Purchase confirmation
- Attached tickets with QR codes
The purchase confirmation email also displays add-ons under the heading "Your add-ons".
Additional features on successful checkout:
- Cross-event offers: If you configured offers from other events, they appear here so the buyer can add more purchases.
- Referral system: If you have the referral system enabled, the buyer automatically receives a link to share with friends and get rewards (more details in the referrals article).
Failed purchase
The buyer sees:
- Error message
- Reason for failure
- Button to return to event and try again
For organizers: Failed purchases are recorded in the orders list. You can see the failure reason by clicking on the order. However, if the buyer simply closes the checkout without attempting to pay, no order is recorded.
Ticket recovery
If the buyer lost the email or can't find their tickets:
Option 1 - Site chatbot: The buyer messages the chatbot saying they lost their tickets. The bot asks for their email and if it finds a purchase, automatically resends the tickets.
Option 2 - Success page: If they're still on the successful purchase page, they can download the tickets or screenshot the QR codes shown on screen.
Option 3 - Organizer does it manually: If the buyer contacts you directly, you can resend the tickets yourself:
- Go to Events → [Your event] → Orders
- Search for the purchase by name or email
- Click the three dots → "Resend tickets"
Alternatively, you can click "Print tickets", save them as PDF, and send them manually via email or WhatsApp.
Refund requests
When a buyer visits the refund request page and enters their order number and email, they see a real-time eligibility banner before submitting the form. This banner indicates whether their purchase is eligible for a refund based on:
- The flexible fare window configured for the event
- How close the event date is
- Whether they purchased refund protection at checkout
This helps buyers understand their options upfront, reducing confusion and the number of support requests you receive from buyers who aren't sure if they qualify for a refund.
Saved data
When a buyer completes a purchase on your site, we save their data in cookies.
Next time they buy:
- Their personal data is already filled in
- They just need to verify and continue
This makes repeat purchases faster.
Next steps
No. The purchase process is completely login-free. This reduces friction and increases conversions. They only need to enter their data once.
The checkout modal opens automatically with the ticket type and quantity already pre-selected, based on what was discussed in the bot conversation. The buyer skips the selection step and goes straight to reviewing and confirming — making the purchase faster and easier.
Tickets are reserved when the buyer completes their information and clicks continue, not when they select them. Whoever reaches that step first "wins" the tickets.
10 minutes from when tickets are reserved (after completing data). If 10 minutes pass, the reservation expires and they must start over.
The buyer sees a message with the failure reason and a button to try again. Their data stays saved so they don't have to fill it in again.
If too many checkout attempts are made in a short period, the buyer sees a clear error message advising them to wait before trying again. This is normal rate-limit protection and resolves on its own after a short wait.
Three ways: they can download them from the success page, see them on screen (screenshot), and they're automatically sent via email.
You can check it in Events → [your event] → Communications → Settings → Purchase email using Preview.
If you want to validate the full real experience, send yourself a courtesy ticket or make a test purchase with your own email.
They can use your site's chatbot to request resending. They just need their email and the bot automatically resends the tickets if it finds the purchase.
No, discount codes only apply to tickets, not to add-ons.
Yes. Mercado Pago, Stripe, and dLocal accept cards from around the world, though there may be exceptional cases of unsupported methods.
If the buyer requests a refund directly from the processor (e.g., reports the card as stolen), the ticket is automatically invalidated in Fanz. The system is synchronized, so you don't need to do anything manually.
When an event has a large number of dates, the system automatically switches to a monthly calendar view. This happens without any action on your part — you don't need to configure anything.