# How to provide liquidity for oPortal？

1\. Click "Add liquidity" on oPortal → <https://oportal.boringdao.com/twoway?tab=1>

Make sure you have connected to the chain that you want to deposit assets from.

![Add Liquidity Dashboard](/files/w5dygs7kjXWCjhYI1jhr)

2\. Select the asset you want to deposit;

3\. Enter the amount of liquidity you would like to supply;

![Add Liquidity](/files/LeROf6Isbil2jDiaV0Q5)

4\. Click "Approve" → "Confirm";

5\. Once you successfully provided the liquidity, you will receive oToken on the Relay Chain (Polygon) and you can choose to "Add", "Remove", or "Farm" on the Dashboard.

Please note that **Extra Bonus** is available when depositing to chains with less than 500K USD remaining liquidity. For chains with less than 100K USDT in liquidity, we will offer a **0.5% extra bonus**; for chains with less than 500K USD in liquidity, we will offer a **0.15% extra bonus**.&#x20;

![Bonus Calculator](/files/wlpDzpD0i13rjDR7rxqv)

The “Add Liquidity” page displays a bonus calculator to show you the estimated bonus rewards for every single chain upon current liquidity condition. So after you choose the specific asset you want to add, liquidity and estimated bonus will be shown for each chain individually on the bottom of the page.

Read more → <https://theboringdao.medium.com/boringdao-oportal-v2-1-is-live-c2bed6803850>

When removing liquidity, a transaction fee will be charged based on the liquidity condition of the destination chain **(high liquidity - 0.05%, medium liquidity - 0.3%, low liquidity - 1%).**

#### **How does oPortal provide yield farm without Impermanent Loss?**

1\. How does oPortal generate income for liquidity providers? The bridge charges a certain amount of the cross-chain amount for each transaction, depending on the remaining liquidity on the destination chain. All revenues generated will go directly to the treasury, 50% of which will be used as rewards for the oToken pool, and the rest will be used to burn $BORING.&#x20;

2\. There is no Impermanent loss for liquidity providers as there is no AMM involved. Only one kind of asset will be in the pool, such as $USDT.


---

# 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.boringdao.com/tutorials/how-to-get-apy-by-oportal-without-il.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.
