# Referral Integration Overview

The Referral integration is the fastest way to embed Banxa into your product. You construct a URL with parameters, redirect your customer to it, and Banxa handles the entire checkout experience.

There are no server-to-server API calls. No backend is required.

## How it works


```mermaid
flowchart LR
    A([Customer ready\nto transact]) --> B[Partner constructs\nreferral URL]
    B --> C[Redirect customer\nto URL]
    C --> D[Banxa-hosted checkout\nKYC + payment]
    D --> E([Customer redirected\nto redirectUrl])
```

1. Banxa provides you with a base referral URL tied to your partner account.
2. You append query parameters to pre-populate the checkout state (wallet address, crypto, fiat, amount, etc.).
3. When a customer is ready to transact, redirect them to the constructed URL.
4. The customer completes their transaction on the Banxa-hosted checkout.
5. On completion, the customer is returned to your `redirectUrl`.


You can display this checkout as a **full redirect** (new tab or same window) or within an **iFrame** embedded in your application.

## When to use Referral

Choose Referral if:

- You want to go live quickly with minimal backend work.
- You don't need real-time order status notifications (webhooks).
- You don't need to show a quote comparison within your own UI.
- KYC sharing is not required.


If any of those are requirements, use the [API integration](/products/hosted-checkout/docs/api-integration/api-integration-overview) instead.

## Limitations

| Feature | Referral | API |
|  --- | --- | --- |
| Webhooks | — | ✓ |
| Quote UI in your app | — | ✓ |
| KYC sharing | — | ✓ |
| Order history lookup | — | ✓ |
| Backend required | No | Yes |


## Next steps

- [Constructing Referral URLs](/products/hosted-checkout/docs/referral-integration/constructing-referral-urls)
- [Supported Parameters](/products/hosted-checkout/docs/referral-integration/supported-parameters)