> For the complete documentation index, see [llms.txt](https://paragon-protocol.gitbook.io/paragon-protocol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://paragon-protocol.gitbook.io/paragon-protocol/core-products/paragon-swap.md).

# Paragon Swap

### Why ParagonSwap feels different

* **Your keys, your coins.** Trade straight from your wallet. No logins. No KYC. No custodians.
* **Best-execution by design.** Our new **Paragon Flow** layer turns every swap into a signed **intent**. Intents are batch-auctioned to solvers for the best route and price, reducing MEV and returning **surplus** back to you.
* **Paragon Shield (MEV & privacy).** Optional private order submission and batch settlement that help you avoid sandwiching and timing games.
* **Transparent rewards.** Liquidity Providers (LPs) earn swap fees **plus** Flow **rebates** when their pools are used in winning routes. Lockers (stXPGN / veFlow) share protocol-aligned yield.

***

### How a swap works (two paths)

#### 1) Classic Router (instant)

* You submit a standard on-chain transaction to the Router (Uniswap v2-style).
* You choose slippage; if price moves too far, it reverts.
* You pay the pool fee; there’s no surplus sharing.
* Best when you need raw “send it now” execution.

#### 2) **Flow (Intent-based)** — *recommended*

* You sign an **EIP-712 intent**: `{ sellToken, buyToken, amountIn, minOut, deadline, prefs }`.
* The **Flow Batcher** privately groups intents and lets solvers compete for best execution across Paragon pools (and later approved external venues).
* Settlement happens on-chain through **FlowSettlement**, which verifies your signature, executes the route, and splits any **surplus** (the amount above `minOut`) automatically:
  * **60%** to you (instant cashback)
  * **30%** to LPs of the pools actually used (Flow earnings)
  * **10%** to stXPGN/veFlow lockers\
    \&#xNAN;*(Testnet defaults; DAO-governed on mainnet.)*

> Toggle **Shield** on the Swap screen to use private, batch-settled Flow mode. You’ll see a “You saved …” line item when surplus exists.

***

### Liquidity-backed trading

Trades clear against liquidity pools supplied by the community. When you add liquidity, you receive **Paragon LP (PLP) tokens** representing your share of the pool. These tokens entitle you to:

* **Swap fees** from that pool
* **Flow LP rebates** when your pool is part of a winning Flow route
* **(Optional) Farm rewards** if the pool has an active farm

***

### Fees & rewards

#### AMM v2 pool fee (classic & Flow)

* **0.30%** per trade by default *(DAO-configurable, pool-specific)*
  * **0.25%** → LPs (immediate to the pool)
  * **0.05%** → Protocol (XPGN buybacks / treasury via Paragon Vault)

> These are the “base” AMM fees you already know. They apply whether you use Classic or Flow.

#### **Flow Surplus & Rebates** (Flow mode only)

* If Flow achieves **`amountOut > minOut`**, the **surplus** is split automatically:
  * **60%** → Trader (cashback, paid in the buy token)
  * **30%** → LPs used by the winning route (pro-rata by liquidity in that block)
  * **10%** → stXPGN / veFlow lockers (execution yield)
* A small **protocol skim** (e.g., 0–5%) may apply **before** the split (DAO-governed).
* You’ll see **“You saved …”** on the swap confirmation and a **Claim** button (or autostake to stXPGN if you opt in).

> Surplus is **additional** to base fees. It rewards good routing and the liquidity that actually enables best execution.

***

### Yield farming boost (optional)

Deposit your PLP tokens into **Farms** to earn additional **XPGN**. Farming helps offset impermanent loss and deepens the pools most used by traders. With **Utilization Gauges** rolling out, emissions increasingly favor pools that drive real volume and smooth price impact.

***

### What you’ll see in the app

* **Swap drawer**
  * *Mode:* Classic ↔ Flow (Shield)
  * *Min received (bound):* your `minOut`
  * *Expected savings:* estimated surplus if Flow wins
  * *Cashback received:* on success (Flow only)
* **LP dashboard**
  * *Fees earned:* standard pool fees
  * *Flow earnings:* surplus rebates from routes that used your pool
* **Lockers page (stXPGN / veFlow)**
  * *Execution yield:* your share of surplus directed to lockers

***

### Supported pool types

* **Today:** v2 constant-product pools (XYK) on BNB Chain testnet
* **Soon:** stable pools and CLMM pools (compatible with Flow settlement; no hard fork needed)

***

### Risks & safeguards

* **Price movement:** Classic mode can revert if slippage is too tight. Flow protects against settlement **below** your `minOut`.
* **MEV:** Shield reduces common attacks via private batching, but markets are adversarial. We keep an allow-list for external venues at launch and expand thoughtfully.
* **Impermanent loss:** LPing carries market risk. Flow **adds** rebates; it doesn’t remove IL risk.

***

### FAQ

**Do I always get a surplus in Flow?**\
No. Surplus appears when the solver can beat your bound. If not, you still settle at or above `minOut` — otherwise it reverts (or falls back to Classic if you’ve enabled fallback).

**What token are rebates paid in?**\
In the **buy token** you receive from the swap.

**Can I use Classic swaps only?**\
Yes. Just keep Shield off and use the Router path.

**Will external DEX routes be used?**\
Yes, after testnet we’ll progressively add approved venues (Thena, Pancake, etc.). Flow still enforces your `minOut` and applies the same surplus split.

***

### Testnet status (next 3–4 weeks)

* Flow intents + Shield batching: **ON**
* Surplus split: **60/30/10** (no protocol skim)
* External venues: **Paragon pools only** (Phase 0)
* LP Flow earnings + Trader cashback: **claimable in-app**
* Contract addresses and parameters will be listed on the **Deployments** page.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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://paragon-protocol.gitbook.io/paragon-protocol/core-products/paragon-swap.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.
