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

# Cross-Chain Bridges

When swapping to a token on a different chain through Talken Swap, bridge protocols are used to move assets between chains. Talken Swap automatically selects the optimal bridge based on the transaction conditions.

### **Circle CCTP**

[Circle CCTP](https://www.circle.com/en/cross-chain-transfer-protocol) (Cross-Chain Transfer Protocol) is a cross-chain transfer protocol operated by Circle, the issuer of USDC.

* **Supported Token:** USDC
* **How It Works:** USDC is burned on the source chain, and an equal amount of USDC is minted on the destination chain. Since this transfers native USDC directly rather than using a wrapping mechanism, the USDC on the destination chain can be used immediately without unwrapping.
* **When Used:** Used when moving USDC to another chain, or when swapping a source token to USDC and then exchanging it for another token on the destination chain.

### **LayerZero**

[LayerZero](https://layerzero.network/) is a general-purpose messaging protocol that relays messages between blockchains. In Talken Swap, tokens are moved between chains using the OFT (Omnichain Fungible Token) standard.

* **Supported Tokens:** USDT, TALK, and other tokens deployed as OFT
* **How It Works:** Tokens are locked or burned on the source chain, and through a LayerZero message, the same tokens are minted on the destination chain.
* **When Used:** Used when moving USDT to another chain or transferring TALK tokens between chains. It is also possible to swap on the source chain and bridge in a single transaction.

### **Automatic Bridge Selection**

When a user requests a cross-chain swap, Talken Swap automatically selects a bridge based on the following criteria:

* Type of source and destination tokens
* Fees for each bridge
* Supported chain availability

For example, Circle CCTP is selected when moving USDC from Ethereum to Polygon, and LayerZero is selected when moving USDT from Arbitrum to Kaia.

### **Cross-Chain Transaction Types**

| Type                     | Description                                      | Example                                                                   |
| ------------------------ | ------------------------------------------------ | ------------------------------------------------------------------------- |
| **Bridge Only**          | Move the same token to a different chain         | Ethereum USDT to Arbitrum USDT                                            |
| **Swap + Bridge**        | Swap on the source chain, then bridge            | Ethereum ETH -> (swap) -> USDT -> (bridge) -> Polygon USDT                |
| **Bridge + Swap**        | Bridge first, then swap on the destination chain | Ethereum USDT -> (bridge) -> Polygon USDT -> (swap) -> JPYC               |
| **Swap + Bridge + Swap** | Swap on both chains + bridge                     | Kaia KAIA -> (swap) -> USDT -> (bridge) -> Polygon USDT -> (swap) -> JPYC |

### **Cross-Chain Transaction Tracking**

Once a cross-chain transaction is initiated, progress is displayed step by step:

1. **Source Chain Transaction Confirmed** -- The swap or token transfer is included in a block
2. **Bridge Transfer in Progress** -- The bridge protocol is relaying the message
3. **Destination Chain Received** -- Tokens are minted/transferred on the destination chain
4. **Complete** -- The destination tokens are reflected in the user's wallet

<Note>
  Cross-chain transactions typically take a few minutes, depending on the bridge protocol's processing time. This may take longer depending on network conditions.
</Note>
