# Swap Scenarios

There are 4 scenarios for Crosschain transactions.

#### 1️⃣ Bridge Only

* Example: **Bridge ETH on Base to ETH on Arbitrum**
* Only supported tokens (USDC, USDT, WETH, etc) can be bridged directly. These tokens vary by source and destination chain.

#### 2️⃣ Swap → Bridge

* Example: **Swap BNB on BNB Chain to USDC on Arbitrum**
* Swap BNB to a supported bridge token (e.g. USDC) using PancakeSwap pools on BNB chain
* Bridge USDC via Across to Arbitrum

#### 3️⃣ Bridge → Swap

* Example: **Swap USDC on BNB Chain to ARB on Arbitrum**
* Bridge USDC via Across
* Swap USDC to ARB using PancakeSwap pools on Arbitrum

#### 4️⃣ Swap → Bridge → Swap

* Example: **Swap BNB on BNB Chain to ARB on Arbitrum**
* Swap BNB to a bridge token (maximizing user output)
* Bridge via Across
* Swap bridged token to ARB on Arbitrum using PancakeSwap pools

***

### ⚠️ Fail Cases

| Scenario                              | Outcome                                                                                                                                                                                         |
| ------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Swap/Tx Failure on Source Chain**   | User instantly receives the original token on source chain                                                                                                                                      |
| **Bridge Tx Failure**                 | Across processes a refund within 90 mins to 2 hours, and user receives the bridged asset on source chain. While Relay processes the refund within a minute in such scenario between SOL <> EVM. |
| **Swap Failure on Destination Chain** | User receives the bridged asset on the destination chain                                                                                                                                        |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pancakeswap.finance/trade/crosschain-swaps/swap-scenarios.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
