DFX V2 Migration! 🔗

DFX Finance
6 min readOct 17, 2022

Website | Twitter | Telegram | Discord | Github | Medium

TL;DR: Unstake LPTs & remove Liquidity from v1 and add liquidity & stake LPTs on v2. (Links provided below in the step by step guide)

This amazing new journey for the protocol requires action by both DFX holders and liquidity providers on DFX (LP Token holders). However, today we will be primarily focusing on liquidity providers to get them all prepped up with the information needed to migrate from V1 to V2. ✅

To be 100% honest, the process is pretty straight forward and will only require the LP Token holders to, unstake their LPTs, remove liquidity from the current pool they are providing to on V1 and then depositing it into the new V2 liquidity pool. (Ethereum and Polygon)


CADC on Polygon has migrated from a bridged token to a native token on the Polygon network. DFX V2 will only support the native token on Polygon hence any CADC (bridged) holders who wish to continue supplying liquidity for the CADC/USDC pool after the V2 launch would first have to migrate their CADC (bridged) for the native CADC token. To migrate CADC (bridged) to Native CADC, follow the official Paytrie guide here.

It is as simple as sending the CADC (bridged) to Paytrie’s dedicated migration wallet and just waiting for the same amount of Native CADC to be sent back. 💱

XSGD on Polygon has also migrated from a bridged token to a native token on Polygon, and like the new DFX V2 CADC/USDC pool on Polygon, the new DFX V2 XSGD/USDC pool on Polygon will only support the native token as well. To migrate XSGD (bridged) tokens to the native tokens, follow the official StraitX guide here.

A truly amazing journey — after many soon tee ems (soon™) and wen V2, we are thrilled to announce the launch of DFX V2! We couldn’t be more excited to share it with everyone! 🔥🔥🔥

Let’s break down all the need to know steps! 🐉

Step 1: Connecting your wallet and finding your Position.

Example of V1 UI

Go to v1.dfx.finance, connect your wallet and find the liquidity pool (LP) you are currently providing to. If you are already providing to an LP, it should show your position at the top of the page. (Image from Step 2)

Step 2: Unstaking your LPTs

If you are currently earning emissions (DFX Rewards), then you should see the “Staked” tab indicate your positions. Meaning you have LPTs (Liquidity Pool Tokens) staked and you will need to click the “Unstake” button to remove them from the current V1 contract.

Pro tip: hit “Unstake all and claim rewards” to unstake all LPT and claim rewards from the staking contract in one transaction.

If your “Unstaked” tab says anything other then (0), then you already have your LPTs unstaked and you can move forward to step 3, removing your liquidity.

Step 3: Removing your Liquidity

Once you have your LPTs unstaked, you can move forward with clicking the “Remove liquidity” button, right next to the blue “stake” button.

Once you click “Remove liquidity”, you will receive a similar box with the amount of LPTs (Representing the amount of liquidity you have in the LP) you wish to withdraw. Since you are withdrawing all, you can either input the amount on the left where (0.0) is, or you can click the the full amount on the right (32.93) and it will auto populate the full amount.

As you can see, I choose to click the max amount on the right and I can now click “Remove Liquidity”.

(You will need to preform a transaction to confirm the Removing Liquidity action.)

Congratulations! You have successfully removed liquidity from the DFX V1 contracts! 🥳

Step 4: Connecting your wallet to V2

Now that you have successfully removed your liquidity from the V1 contracts, you can now go to the new URL for V2 and proceed to deposit your liquidity and stake your LPTs for DFX emissions! ✨

Go to the V2 URL: https://exchange.dfx.finance/pools 👈 and connect your wallet.

Step 5: Adding Liquidity to V2

Example of Two Sided

One of the big issues that has been fixed in the V2 contracts was an invariance issue with LPs not being able to deposit their desired amount of liquidity into the LP of their choosing.

Example of Single Sided

Now that I have found the liquidity pool I want to provide to (CADC/USDC) and how I want to deposit (single sided or two sided), I can now input my desired amount and click “Add liquidity”.

You will have to preform two transactions, one for allowing the protocol to access the coin/token you are depositing (in this case, USDC) and one for actually depositing the liquidity.

Example of liquidity successfully being added!

You have successfully migrated your liquidity to the DFX V2 contracts! However, there is one final step to go through to make sure you earn that juicy APR! 🤑

Step 6: Staking your LPTs on V2

Example of unstaked LPTs

Note: You will not be able to stake your LPTs until Thursday when the first epoch for veDFX goes live!

Now that you can see your “Unstaked” LPTs, the last thing you will need to do is click the blue “Stake” button under the “My Positions” section.

Example of clicking Stake for LPTS

A small box will pop up to the foreground where you can input the amount of LPTs you would like to stake (LPTs represent your position in the LP). Once you have put in your desired amount, you can click the big blue “Stake” button and confirm the two transactions! Again, one for allowing the protocol to access the coin/token you are depositing (in this case, the LPT) and one for actually depositing the liquidity. ✅

Congratulations you have successfully migrated your liquidity and staked your LPTs! 🥳✨

Example of LPTs being staked successfully

As you can see, my LPTs are successfully staked and I will start incurring DFX rewards on Thursday, (October 20th)! The reason is, that's whenever the first epoch will start for veDFX!

If you need any additional help, please reach out to either a core contributor or one of the DFX Ambassadors through one of our community channels and we will be more then happy to help. 🍻

How to add liquidity: https://docs.dfx.finance/protocol/liquidity-mining/how-to-supply-liquidity

Join us!

If you are new to DFX Finance, the best way to stay on top of all the latest developments is to follow us on Twitter and join our Discord or Telegram!

Thank you for the support and stay safe! ✌

About DFX Finance

DFX is a decentralized foreign exchange (FX) protocol that facilitates the seamless exchange of fiat-backed stablecoins denominated in a growing number of currencies. The current reliance on USD-pegged stablecoins creates undue economic friction for those in other parts of the world,
and DFX is here to change that.✨

Using a hyper-efficient AMM, optimized for low volatility trading, DFX provides FX swaps with rates that will beat any bank, money changer, or FX platform.💱

We’re super excited to build the FX infrastructure for DeFi and would love to hear more of your ideas and comments on how we can make DFX better together!

DFX Finance. Stablecoins for the world.

Website | Twitter | Telegram | Discord | Github | Medium



DFX Finance

The most hyper-efficient decentralized FX protocol optimized for stablecoins. Check it out — https://exchange.dfx.finance/