> ## Documentation Index
> Fetch the complete documentation index at: https://help.thexo.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Payment link vs. checkout session

> The difference between in-app Stripe checkout (30 min) and a shareable payment link (24 hours).

XO offers two ways for customers to pay for their bookings: an **in-app checkout session** and a **payment link**. Both use Stripe and result in the same confirmed booking — they differ in how and when the customer pays.

***

## In-app checkout session

When a customer completes their booking in the XO app or website, they're redirected to a Stripe checkout page immediately. This is a **checkout session**.

| Feature                | Details                                                                          |
| ---------------------- | -------------------------------------------------------------------------------- |
| **How it's triggered** | Automatically when the customer finalises their booking                          |
| **Expiration**         | 30 minutes — the customer must pay within 30 minutes of submitting their booking |
| **Suitable for**       | Real-time bookings where the customer intends to pay immediately                 |

If the checkout session expires before payment, the booking moves to **Declined** status and the customer needs to start a new booking.

***

## Payment link

A payment link is a shareable URL that the customer can open and pay at a later time. It's typically sent via email or message after the booking is created.

| Feature                | Details                                                                                                             |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------- |
| **How it's triggered** | Generated on request — either by the system after an admin creates a booking, or via the booking confirmation email |
| **Expiration**         | 24 hours — the customer must pay within 24 hours                                                                    |
| **Suitable for**       | Situations where you or the customer needs more time before payment                                                 |

***

## When would I use a payment link?

Payment links are useful when:

* You've created an admin booking (guest list entry) and want to send the customer a payment link later.
* The customer didn't complete the checkout session in time and needs a fresh link.
* The customer is booking by phone or email and you want to send them a link to pay.

***

## What happens after payment?

Regardless of which method is used, the outcome is the same:

* Payment successful → Booking moves to **Confirmed**, entry passes are generated and sent to the customer.
* Payment not completed / expired → Booking remains in **Pending** or moves to **Declined**.

***

## Does the customer choose which method to use?

No — the customer doesn't choose. The checkout session is the default flow. Payment links are generated by the system or admin when needed (e.g., for admin-created bookings or follow-up payment reminders).

***

## What if a customer's payment fails?

If a payment fails during the checkout session:

1. The customer sees an error message on the Stripe checkout page.
2. They can retry with a different card or payment method immediately within the same session.
3. If the session has expired, they need to start a new booking.

If a payment link expires, a new one needs to be generated. Contact support at [support@thexo.app](mailto:support@thexo.app) if a customer's payment link has expired and needs to be resent.
