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

# Buy and sell

> How to trade a token, in the opening window and with a stock pair.

## What it is

The trade box sits beside the chart on a token page. On a phone, a bar at the bottom of the screen brings it up. The same box works on the curve and after migration.

## When to use it

Use it for any trade on the site. Before a first buy, read [Check a launch](https://docs.pariprotocol.xyz/guides/check-a-launch.md).

## Step by step

**1. Pick Buy or Sell**

A buy is entered in SOL. A sell is entered in tokens, or as 25, 50 or 100% of what you hold.

**2. Read the quote**

It shows what you receive, the fee right now and the minimum received. The trade fails rather than deliver less than the minimum.

**3. Approve in your wallet**

The transaction is checked on the network first. If the check fails, the box says why in words and your wallet is not asked.

## The opening window

A new token opens with a high fee that falls every second. Above 10%, the button changes to "Buy anyway at X% fee", so a buy at that fee is always a choice. Waiting costs less.

The caps of the [preset](https://docs.pariprotocol.xyz/protocol/presets.md) apply during the window. A wallet can hold only so much of the supply, and each slot takes only so much in buys. The box shows both and how much room your wallet has left. A sell pays the same fee as a buy.

## Tokens paired with a stock

A token paired with a tokenized stock trades against that stock, and you still pay and receive SOL. That takes two transactions:

* **A buy** swaps your SOL for the stock, then buys the token with it.
* **A sell** sells the token for the stock, then swaps the stock for SOL.

Your wallet asks once if it can sign both together, and twice if it cannot. The box tells you which before you start.

Devnet has no stock market. There, a buy spends test stock from your wallet at a fixed rate, and a sell leaves the stock in your wallet.

> [!NOTE]
>
> Tokenized stocks are not offered to US persons. The issuer of a stock can freeze accounts that hold it.

## After migration

Once a token migrates, the same box trades on its pool. The caps are over, and the pool fee applies.

## Numbers and limits

| | |
| - | - |
| Slippage | Starts at 1%. You can set 0.1% to 10% |
| Confirm button | Above a 10% fee, on buys |
| Fee on the curve | 1% once the opening fee is over |
| Fee after migration | 0.5%, set when the pool is created |

## What can go wrong

> [accordion] The trade failed with a minimum error
>
> The price moved past your slippage. The trade did not go through. Read the new quote and try again.

> [accordion] The buy was refused during the window
>
> The buy would take your wallet over the max wallet, or the slot already reached its cap. Buy less, or wait for the window to end.

> [accordion] A sell from another app was refused
>
> During the window, the hook refuses any transaction that uses a program on the blocklist, sells included. The site is not on that list. After the window, every program can trade.

> [accordion] The second transaction of a stock trade failed
>
> You keep the stock in your wallet, and the box says how much you hold. Anything the first transaction delivers above its minimum also stays in your wallet as stock.

> [accordion] A router does not show the token
>
> Jupiter's main router does not route DBC pools that have a hook. Other terminals do. After migration, Jupiter routes normally.

## Next

> [card] [Read a token page](https://docs.pariprotocol.xyz/guides/read-a-token-page.md)
>
> What each part of the page tells you.

> [card] [Fees](https://docs.pariprotocol.xyz/protocol/fees.md)
>
> Who receives what on each trade.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.