> For the complete documentation index, see [llms.txt](https://docs.crosscurve.fi/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.crosscurve.fi/user-documentation/liquidity-interface/liquidity-provision-use-cases/deposit/via-curve-balanced/adding-liquidity-to-pools-on-sonic.md).

# Adding liquidity to pools on Sonic

To provide liquidity to **Sonic** pools:

* Select the pool where you want to transfer liquidity, e.g., **xsArbitrum**.
* Determine the required token amounts.

{% hint style="success" %}
*For the **Arbitrum** example, you need 25% **frxUSD** and 25% **scUSD** to obtain 50% **xfrxUSD** and 50% **sUSDC\_arb** (percentages are based on the total liquidity you plan to transfer to the **xsArbitrum** pool).*
{% endhint %}

* Obtain the synthetic token for this direction, in this case, [**sUSDC\_arb**](https://docs.crosscurve.fi/user-documentation/migration-to-sonic/liquidity-transfer-from-fantom-to-sonic#obtaining-susdc_arb).
* For **USD** pools, acquire [**xfrxUSD** ](https://docs.crosscurve.fi/user-documentation/migration-to-sonic/liquidity-transfer-from-fantom-to-sonic#obtaining-xfrxusd-via-the-curve-app-interface)tokens. For example, deposit an equal amount of [**frxUSD** ](https://docs.crosscurve.fi/user-documentation/migration-to-sonic/liquidity-transfer-from-fantom-to-sonic#obtaining-frxusd-on-sonic-using-crosscurve-and-frax-bridge)and [**scUSD** ](https://docs.crosscurve.fi/user-documentation/migration-to-sonic/liquidity-transfer-from-fantom-to-sonic#obtaining-scusd-on-sonic-using-crosscurve-and-rings-app)into the [**CrossCurve frxUSD**](https://curve.finance/dex/sonic/pools/factory-stable-ng-25/deposit/) pool.
* Deposit the **universal token** and the **directional (synthetic) token** into the paired pool.

Let's examine each step:

### **1. Obtaining xfrxUSD via the Curve App interface** <a href="#obtaining-xfrxusd-via-the-curve-app-interface" id="obtaining-xfrxusd-via-the-curve-app-interface"></a>

To obtain the LP token **xfrxUSD**, you need to provide liquidity in the [**CrossCurve frxUSD**](https://curve.finance/dex/sonic/pools/factory-stable-ng-25/deposit/) pool:[ https://curve.finance/dex/sonic/pools/factory-stable-ng-25/deposit/](https://curve.finance/dex/sonic/pools/factory-stable-ng-25/deposit/).

Go to the [CrossCurve frxUSD](https://curve.finance/dex/sonic/pools/factory-stable-ng-25/deposit/) pool page and connect your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXe6ht4rrmW8xK3yPz9Y4PxLS6FqwZ37n5UssZ10dy-6mnFgb5keCya_hzkjrjzSJw5v4UKVjaJns-nRlxMMnuOUIR7VG3m7VccrGXONxxIQjpWasWYulwCMkrbkETjC-m5_N4jn4Q%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=22abc3bf&#x26;sv=2" alt=""><figcaption></figcaption></figure>

Enter the desired deposit amount on the **Deposit** tab. To avoid losses due to slippage, it’s recommended to deposit funds in a balanced manner by clicking **Add all coins in a balanced proportion** (learn more [here](https://docs.crosscurve.fi/user-documentation/liquidity-interface/liquidity-provision-use-cases/curve-knowledge-database/balanced-liquidity-provision)).

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXeeNhAu413QMe_qfCGQ1h1cbzsWkQ920LD4OlwcIC6gaelWESm8EcwhmlhXuZNldE7Yiifri8Crm25XzVGLjkQxzPMPdVWORONvB93rtnsfsELQShFwWLSEKfDN2WuuwBRdeWWm%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=bd9b929f&#x26;sv=2" alt=""><figcaption></figcaption></figure>

In the first transaction, confirm the spending of funds by clicking **Approve Spending** and signing the transaction in your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcNXdK498D0k7V7f6S2jgFHZ5-OTK-RTeNE4FS0AiyIiXhSilodJsWd_vaONeDdJ-3HKCPTa2_qnC0FX2C7L0LcArnqOQsibUeFtTTYwpU1gOzUhqulBHD40kTXXLtLQg8njGGk%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=d500f4a2&#x26;sv=2" alt=""><figcaption></figcaption></figure>

In the second transaction, deposit the funds by clicking **Deposit** and signing the transaction in your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXclGastFVCL0waSV-QR3MgDKFOJJhgDaQ5_2XZvB5hub05iHlSQh-JEY_okE_MyzQYLCO6tS3MM9dtvLmGfBN8H1-XM7kuO_3S3UvId2OJ1ppb_caAAAI3kDcAbHshlMgdVo0n8%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=76004335&#x26;sv=2" alt=""><figcaption></figcaption></figure>

After the transaction is successfully confirmed on-chain, your wallet will display the amount of received **xfrxUSD** LP tokens.

{% hint style="success" %}
*If your wallet doesn’t support automatic token addition, add it manually as a custom token with the contract address* [*0xf1232a1ab5661abdd6e02c6d8ac9940a23bb0b84* ](https://sonicscan.org/address/0xf1232a1ab5661abdd6e02c6d8ac9940a23bb0b84)*on the **Sonic** network.*
{% endhint %}

### 2. Obtaining sUSDC\_arb <a href="#obtaining-susdc_arb" id="obtaining-susdc_arb"></a>

**sUSDC\_arb** tokens on the **Sonic** network can be swapped from any available asset in the **xsArbitrum** pool via the [CrossCurve](https://app.crosscurve.fi/liquidity?pool=0x440bcab62d629ba60ca56b80e565636e0c404e60\&type=curve\&action=deposit\&output=0xd3dce716f3ef535c5ff8d041c1a41c3bd89b97ae\&chainOut=146) app.

1. Navigate to the **Liquidity** tab in the **Yield** section. Select the **Balanced mode** and click **Next**.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXffDk6rg4AaXoz8HvlzivceIPadbY7jHzNa32_pMcQ5H8GgEiWXfvIbhR9K4a7PXH9JjUSF7CP7dlKyHfrRlz4mW_IRDaw2_IKsrsRWg2pxnVMB4RpP6bYOUcOQvpNVCwat6_lsjg%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=3e0878bb&#x26;sv=2" alt=""><figcaption></figcaption></figure>

Enter the desired amount to swap, approve the spending by clicking **Approve**, and sign the transaction in your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXdDLd9iZCrP4PzVBw2bFxcDfJ592AapjZo-TU3T_CY29poxAVzadmEZgEaIvLd3o2PntKOzo1CSWSv9HN6pGdtuDv0YNGRtgpJUrR67hyIAGXHtLpVXn5oCuBgfnQoCkpCWvNP2MQ%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=fd18659b&#x26;sv=2" alt=""><figcaption></figcaption></figure>

Click **Swap** to execute the exchange and confirm the transaction in your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXdcUv3qx0ti32qTm1yZWBGxk6lyLgppmIwkjGWw-5aSHX0P-WQxhBZvwHUygbocF9KpSx1RvHgxEvQqKF6ue0-tWpKOFE9OPeg4auJ0eAjDn8JMK0LQUwcnuasXE4fInzJ8IDA6og%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=7f682196&#x26;sv=2" alt=""><figcaption></figcaption></figure>

1. If you know the swap direction, the exchange can be performed in the **Trade** tab using **Advanced mode** ![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXeEHSW7_n2zwaRaWPyGdiU4PI4KhSY_L-gMrAypAXDf1zsRodyCxoLsSFkVvUAivaHGPTW1EDuAcMMayUIakzeiIQFtRykINux5WsFNAoslJ6h3Jw17wVRd1_aZTS0T75fb7F06NQ?key=WmrHq-SRelBtsHjypuiR4g) with any available asset.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXf2QklHIooACOMHHdfeAzT0KHolQnZy40kgWSXexjrh0Nvms2DIQfWb6-uuU36Snht93yDn54-1nJsKGS2jdSPCuXKuw3UWIQC7cS4unY2zQIzOsvI7pciLRVp8_F-k0mRgcJ_whw%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=6d7e3b0f&#x26;sv=2" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
***Note**: Some directions may experience high slippage!*
{% endhint %}

### 3. Adding liquidity to xsArbitrum pool via Curve <a href="#obtaining-lp-xsarbitrum-via-curve" id="obtaining-lp-xsarbitrum-via-curve"></a>

Navigate to the [CrossCurve Stable ARB](https://curve.finance/dex/sonic/pools/factory-stable-ng-73/deposit/) pool page:[ https://curve.finance/dex/sonic/pools/factory-stable-ng-73/deposit/](https://curve.finance/dex/sonic/pools/factory-stable-ng-73/deposit/) and connect your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcTvzq3Mgnecf7i4MmA_RHNpqRP1R0o9QnViy04jMmykH5GP5g49begK2kQz8G6vT-2vL5U-hRvmcgupnwlKrHNl8ACdH8j6cucDxST5DVhp4sFF02ep00xdL9r3P-L6_7tJ_uS_A%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=d7b8723e&#x26;sv=2" alt=""><figcaption></figcaption></figure>

Enter the desired deposit amount in the **Deposit** tab. To avoid losses due to slippage, it’s recommended to deposit using the balanced method by clicking **Add all coins in a balanced proportion** (more details [here](https://docs.crosscurve.fi/user-documentation/liquidity-interface/liquidity-provision-use-cases/curve-knowledge-database/balanced-liquidity-provision)).

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXdIk-LDxcgGHY7ysJA_LIJ9tk8neFCXuBYC2gPubI3gUEJRaNS_FqRPVdkZa3Y-NyDHJDWW5jMhwTpThSzOXApk_I0IcCzDCUhxQF-YGeB2vNxZ04dQWaCnZKGmETvH9hX6wZcy4g%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=ba8b1a37&#x26;sv=2" alt=""><figcaption></figcaption></figure>

In the first transaction, approve the spending by clicking **Approve Spending** and sign the transaction in your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXfKaypv2dgQLD1JdNTT9RCb-UQPO2BRujJoY8hu7YyWTeP_6kddjhng9svTZCNLVa1U149OHWzzMv2Vza7oYjrhwUYm8dH4bg_zBJQOh9MCov0ag6-XDKtsVJL-kKvfu5hbCpwoTQ%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=9e67e4e1&#x26;sv=2" alt=""><figcaption></figcaption></figure>

In the second transaction, deposit the funds by clicking **Deposit** and sign the transaction in your wallet.

<figure><img src="https://docs.crosscurve.fi/~gitbook/image?url=https%3A%2F%2Flh7-rt.googleusercontent.com%2Fdocsz%2FAD_4nXcfSj05LZ-S1x7K-OlcuV9Xz9cm6iQmMIutA2403PR6P7ER97OdSnnYnB1kxyA7lbz-C9nIesvUv3YyIxj621s_a_iCI4EQxSfJyqu2MBUjO18AVf1Nrq_FErZlLtbRrhWrqy515A%3Fkey%3DDjinIJuhuMxEvVMyPZR-qYsk&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=3a11f111&#x26;sv=2" alt=""><figcaption></figcaption></figure>

After the transaction is confirmed on-chain, the amount of received **xsArbitrum** LP tokens will appear in your wallet and in the **Your Details** tab.

<figure><img src="https://2491851656-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSnaMzO2OxSvSBUVB6drl%2Fuploads%2Ft52CIjMopFwiCO9H8UcT%2Fimage.png?alt=media&amp;token=961661fb-6b7d-403d-b9b5-f43bf1b1989b" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
*If your wallet doesn’t automatically add the token, manually add it as a custom token using the contract address* [*0x440bcab62d629ba60ca56b80e565636e0c404e60*](https://sonicscan.org/address/0x440bcab62d629ba60ca56b80e565636e0c404e60) *on the **Sonic** network.*
{% endhint %}
