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

# Supported chains

> 18 chains, native Bitcoin and Monero included, and a token ID model where one asset has a distinct ID per chain.

Vane swaps across 18 chains, native Bitcoin and Monero included, with nothing wrapped along the way.

The deposit confirmations column shows how many block confirmations the deposit chain requires before the order leaves `AWAITING_USER_DEPOSIT_CONFIRMATIONS`. The wait varies a lot: Polygon needs 128, XRP just one.

| ID | Chain                   | Deposit confirmations |
| -: | ----------------------- | --------------------: |
|  1 | Bitcoin                 |                     2 |
|  2 | Ethereum (ERC20)        |                    12 |
|  3 | Polygon POS             |                   128 |
|  4 | Solana                  |                    32 |
|  5 | BNB Smart Chain (BEP20) |                    10 |
|  6 | Avalanche               |                    10 |
|  7 | Tron                    |                    20 |
|  8 | Sui                     |                     5 |
|  9 | Aptos                   |                     5 |
| 10 | Monero                  |                    10 |
| 11 | XRP                     |                     1 |
| 12 | Cardano                 |                    10 |
| 13 | Arbitrum One            |                    64 |
| 14 | Base                    |                    12 |
| 15 | Dogecoin                |                     6 |
| 16 | Litecoin                |                     2 |
| 17 | Bitcoin Cash            |                     2 |
| 18 | Zcash                   |                     6 |

## Token IDs

Quotes and orders name tokens by numeric ID: `depositTokenId` for what you send, `settleTokenId` for what arrives. An ID identifies an asset on one specific chain, so BTC alone is three entries: `158` native, `159` on Ethereum, `157` on BNB Smart Chain. A symbol never identifies a token by itself. Build pickers as token plus chain pairs and resolve IDs from the catalog rather than hardcoding them. Native coins carry `address: "native"`; other tokens carry their contract address. The catalog also reports `depositsActive` per chain; check it before offering a token as the deposit side.

The catalog at [GET /v1/tokens](/api-reference/tokens/list-tokens) holds over 2,000 tokens, roughly half of them active, and needs no auth. Fetch it at startup and cache it.
