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

# Hosted checkout

> The payment page your customer sees.

Every payment has a checkout URL. Send your customer there. The page handles wallet selection, deep links and payment status.

## What the customer sees

![The hosted checkout on a phone: amount, countdown and wallet list](https://mintcdn.com/paywit/aa5v6ttTJrIo4ak6/images/hosted-checkout.jpg?fit=max\&auto=format\&n=aa5v6ttTJrIo4ak6\&q=85\&s=77478730307bbe7bbb245ccb504fa8c0)

1. The amount in USDC and a countdown to the payment's `expiresAt`.
2. A list of wallets. On Stellar today: Lobstr, Beans and Albedo. Phantom is available for customers paying from Solana, with the funds bridged to your Stellar wallet.
3. Tapping a wallet opens it with the payment pre-filled. On a phone, if the wallet is not installed, the checkout shows the app store link instead.
4. The customer approves in their wallet. The checkout polls until the funds arrive, then shows **Paid** and sends the customer to your `returnUrl` if you set one.

## Opening the checkout

Redirect to `paymentCheckoutUrl`, or open it in a new tab. On mobile apps, open it in an in-app browser so the wallet deep links work. The [Flutter SDK](https://docs.paywit.xyz/sdks/flutter.md) does this for you.

## Return URL

`returnUrl` is where the checkout sends the customer after paying. It must be `http` or `https`. The customer can also close the tab and pay later from their wallet as long as the payment has not expired, so treat a visit to your return page as "they came back", not "they paid". The webhook is the source of truth for fulfilment.

## Expiry

Every payment has an `expiresAt`. After that time it moves to `Expired` and the checkout stops accepting funds. Create a new payment rather than reusing an old URL. Cross-chain payments that have started bridging never expire, since the funds are already in flight.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.