> ## Documentation Index
> Fetch the complete documentation index at: https://flake-32766f49.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Swap experience

# Swap Experience

This page explains how swap execution works from the user point of view.

## Routing Model

The app requests routes from backend APIs

* Best route is selected by output amount
* Quote refresh runs periodically while inputs stay valid
* Error states are surfaced inline (`No route found`, generic failure, etc.)

## Execution Paths

### EVM Source

Possible execution patterns:

* Native token swap: direct tx to swap executor path
* ERC-20 with allowance already set: single swap tx
* ERC-20 without allowance: approval tx, then swap tx
* Permit-capable token route: signature permit path may run first

### Non-EVM Source

Uses chain-specific signing/submit logic:

* `SVM`: Solana versioned tx signing and send
* `UTXO`: Bitcoin PSBT signing and broadcast
* `MVM`: Sui transaction signing and execution

## User Feedback During Swap

Toast-style status prompts are shown for:

* network switching
* approval waiting
* wallet signature request
* transaction confirmation

## Success Modal

After confirmation, a modal summarizes:

* asset flow
* chain IDs
* receiver short address
* route short ID
* tx hash (with copy action)

The modal styling follows the same dark visual language as the rest of the website.

## Route Safety Guardrails

* Allowed target checks on configured router paths
* Allowance checks before token transfer routes
* Address validation before executing cross-chain destination legs

## Reality Notes

* ETA and unit prices are estimates
* Bridge timing can vary by chain congestion and relayer speed
* Requotes can happen in volatile markets

If this sounds chaotic, that is because cross-chain is usually chaotic. The app just tries to make chaos readable.
