diff --git a/docs/defi/defi-contracts-testnet.md b/docs/defi/defi-contracts-testnet.md index 3b206d7572..0dcf9eda81 100644 --- a/docs/defi/defi-contracts-testnet.md +++ b/docs/defi/defi-contracts-testnet.md @@ -29,21 +29,21 @@ Below is a list of commonly used DeFi contracts on Flow Testnet: #### Flow EVM Testnet -| Token | EVM Testnet Address | How to Get | -| ------------------------- | -------------------------------------------- | ----------- | -| FLOW (native, non-erc20) | — | [Faucet][1] | -| [WFLOW][2] | `0xd3bF53DAC106A0290B0483EcBC89d40FcC961f3e` | [Swap][28] | -| [MOET][3] | `0x51f5cc5f50afb81e8f23c926080fa38c3024b238` | [Swap][29] | -| [MockUSDC][4] | `0xd431955D55a99EF69BEb96BA34718d0f9fBc91b1` | [Swap][30] | -| [mUSDC][5] | `0x4154d5B0E2931a0A1E5b733f19161aa7D2fc4b95` | [Swap][31] | -| [USDf][6] | `0xd7d43ab7b365f0d0789aE83F4385fA710FfdC98F` | [Swap][32] | -| [USD Flow][7] | `0xf2E5A325f7D678DA511E66B1c0Ad7D5ba4dF93D3` | — | -| [USDC.e][8] | `0x9B7550D337bB449b89C6f9C926C3b976b6f4095b` | — | -| [ankrFLOW][9] | `0xe132751AB5A14ac0bD3Cb40571a9248Ee7a2a9EA` | — | -| [ankrFLOWEVM][10] | `0x8E3DC6E937B560ce6a1Aaa78AfC775228969D16c` | — | -| [ETHf][11] | `0x059A77239daFa770977DD9f1E98632C3E4559848` | [Mint][14] | -| [BTCf][12] | `0x208d09d2a6Dd176e3e95b3F0DE172A7471C5B2d6` | [Mint][15] | -| [cbBTC][13] | `0x30F44C64725727F2001E6C1eF6e6CE9c7aB91dC3` | [Mint][16] | +| Token | EVM Testnet Address | How to Get | +| ------------------------ | -------------------------------------------- | ----------- | +| FLOW (native, non-erc20) | — | [Faucet][1] | +| [WFLOW][2] | `0xd3bF53DAC106A0290B0483EcBC89d40FcC961f3e` | [Swap][28] | +| [MOET][3] | `0x51f5cc5f50afb81e8f23c926080fa38c3024b238` | [Swap][29] | +| [MockUSDC][4] | `0xd431955D55a99EF69BEb96BA34718d0f9fBc91b1` | [Swap][30] | +| [mUSDC][5] | `0x4154d5B0E2931a0A1E5b733f19161aa7D2fc4b95` | [Swap][31] | +| [PYUSD0][6] | `0xd7d43ab7b365f0d0789aE83F4385fA710FfdC98F` | [Swap][32] | +| [USD Flow][7] | `0xf2E5A325f7D678DA511E66B1c0Ad7D5ba4dF93D3` | — | +| [USDC.e][8] | `0x9B7550D337bB449b89C6f9C926C3b976b6f4095b` | — | +| [ankrFLOW][9] | `0xe132751AB5A14ac0bD3Cb40571a9248Ee7a2a9EA` | — | +| [ankrFLOWEVM][10] | `0x8E3DC6E937B560ce6a1Aaa78AfC775228969D16c` | — | +| [ETHf][11] | `0x059A77239daFa770977DD9f1E98632C3E4559848` | [Mint][14] | +| [BTCf][12] | `0x208d09d2a6Dd176e3e95b3F0DE172A7471C5B2d6` | [Mint][15] | +| [cbBTC][13] | `0x30F44C64725727F2001E6C1eF6e6CE9c7aB91dC3` | [Mint][16] | #### Flow Cadence Testnet @@ -74,32 +74,32 @@ Below is a list of commonly used DeFi contracts on Flow Testnet: #### Flow EVM Testnet -| Contract | EVM Testnet Address | -| --------------------------------------------- | -------------------------------------------- | -| [UniswapV2Factory (FlowSwap)][33] | `0x7d726261FB76B264fc20eA1f19D900D760136566` | -| [UniswapV2Router02 (FlowSwap)][34] | `0x524E1291c109BE27FDE48De97cAf0B3c0F02A68f` | -| [UniswapV2Pair (FlowSwap)][35] | `0x21E3aa01561d7D869785aAedB14130C5807C5A12` | -| [UniswapV3Factory (FlowSwap)][36] | `0x92657b195e22b69E4779BBD09Fa3CD46F0CF8e39` | -| [NonfungiblePositionManager (FlowSwap)][37] | `0x8b9F96390EC35d5859937c7c5D68Ff6D5CFC312f` | -| [SwapRouter02 (FlowSwap)][38] | `0x2Db6468229F6fB1a77d248Dbb1c386760C257804` | -| [QuoterV2 (FlowSwap)][39] | `0xA1e0E4CCACA34a738f03cFB1EAbAb16331FA3E2c` | +| Contract | EVM Testnet Address | +| -------------------------------------------- | -------------------------------------------- | +| [UniswapV2Factory (FlowSwap)][33] | `0x7d726261FB76B264fc20eA1f19D900D760136566` | +| [UniswapV2Router02 (FlowSwap)][34] | `0x524E1291c109BE27FDE48De97cAf0B3c0F02A68f` | +| [UniswapV2Pair (FlowSwap)][35] | `0x21E3aa01561d7D869785aAedB14130C5807C5A12` | +| [UniswapV3Factory (FlowSwap)][36] | `0x92657b195e22b69E4779BBD09Fa3CD46F0CF8e39` | +| [NonfungiblePositionManager (FlowSwap)][37] | `0x8b9F96390EC35d5859937c7c5D68Ff6D5CFC312f` | +| [SwapRouter02 (FlowSwap)][38] | `0x2Db6468229F6fB1a77d248Dbb1c386760C257804` | +| [QuoterV2 (FlowSwap)][39] | `0xA1e0E4CCACA34a738f03cFB1EAbAb16331FA3E2c` | | [V3Migrator (FlowSwap)][40] | `0x00a101726ff770cd8ed53E8376b9440Bad40CAd9` | -| [UniswapV3Staker (FlowSwap)][41] | `0x04400857ad69EaA7dd6fEF1C329E80E50BD30b76` | -| [TickLens (FlowSwap)][42] | `0x36D9bDCbA840F5bcb95EE7bD54a86808aef6581F` | -| [NFTDescriptor (FlowSwap)][43] | `0x6982D5Cb80Cd7E2cb7C0d0B8452841471Bc84Bc2` | -| [v3_nft_position_descriptor (FlowSwap)][44] | `0x61f4e983A72d9BD8429154982A3d9fCF3A1D98d0` | -| [TransparentUpgradeableProxy (FlowSwap)][45] | `0xE0895150a7c84e8fB9fecCE72F4C80c130C80fDa` | -| [UniswapV3Pool (FlowSwap)][46] | `0xa4Db57e3d3c6674FA02a2f3a667d3C22Fe17efF4` | +| [UniswapV3Staker (FlowSwap)][41] | `0x04400857ad69EaA7dd6fEF1C329E80E50BD30b76` | +| [TickLens (FlowSwap)][42] | `0x36D9bDCbA840F5bcb95EE7bD54a86808aef6581F` | +| [NFTDescriptor (FlowSwap)][43] | `0x6982D5Cb80Cd7E2cb7C0d0B8452841471Bc84Bc2` | +| [v3_nft_position_descriptor (FlowSwap)][44] | `0x61f4e983A72d9BD8429154982A3d9fCF3A1D98d0` | +| [TransparentUpgradeableProxy (FlowSwap)][45] | `0xE0895150a7c84e8fB9fecCE72F4C80c130C80fDa` | +| [UniswapV3Pool (FlowSwap)][46] | `0xa4Db57e3d3c6674FA02a2f3a667d3C22Fe17efF4` | | [UniversalRouter (FlowSwap)][47] | `0xB685ab04Dfef74c135A2ed4003441fF124AFF9a0` | -| [Permit2 (FlowSwap)][48] | `0x000000000022D473030F116dDEE9F6B43aC78BA3` | -| [FusionXInterfaceMulticall (FlowSwap)][49] | `0x02b9B840CDCEe84510a02cc85f351CAaD41f46CE` | -| [proxy_admin (FlowSwap)][50] | `0xf4011F45A666dC7eC54445a710c3aae735F7E890` | -| [StableKittyFactoryNG (KittyPunch)][51] | `0x0699C35C0104e478f510531F5Dfc3F9313ae49D1` | -| [TwoKittyFactory (KittyPunch)][52] | `0xeaa5949471C7B31ae97D3a52483028aE595E8e83` | -| [TriKittyFactory (KittyPunch)][53] | `0x62aC6e05Bac04702bF744106499F72f200297121` | -| [KittyRouterNgPoolsOnly (KittyPunch)][54] | `0x70e8C797f698De61787A7275628713077723694` | -| [PunchSwapV2Router02 (KittyPunch)][55] | `0xeD53235cC3E9d2d464E9c408B95948836648870B` | -| [PunchSwapV2Factory (KittyPunch)][56] | `0x0f6C2EF40FA42B2F0E0a9f5987b2f3F8Af3C173f` | +| [Permit2 (FlowSwap)][48] | `0x000000000022D473030F116dDEE9F6B43aC78BA3` | +| [FusionXInterfaceMulticall (FlowSwap)][49] | `0x02b9B840CDCEe84510a02cc85f351CAaD41f46CE` | +| [proxy_admin (FlowSwap)][50] | `0xf4011F45A666dC7eC54445a710c3aae735F7E890` | +| [StableKittyFactoryNG (KittyPunch)][51] | `0x0699C35C0104e478f510531F5Dfc3F9313ae49D1` | +| [TwoKittyFactory (KittyPunch)][52] | `0xeaa5949471C7B31ae97D3a52483028aE595E8e83` | +| [TriKittyFactory (KittyPunch)][53] | `0x62aC6e05Bac04702bF744106499F72f200297121` | +| [KittyRouterNgPoolsOnly (KittyPunch)][54] | `0x70e8C797f698De61787A7275628713077723694` | +| [PunchSwapV2Router02 (KittyPunch)][55] | `0xeD53235cC3E9d2d464E9c408B95948836648870B` | +| [PunchSwapV2Factory (KittyPunch)][56] | `0x0f6C2EF40FA42B2F0E0a9f5987b2f3F8Af3C173f` | #### Flow Cadence Testnet diff --git a/docs/defi/pyusd0-integration-guide.md b/docs/defi/pyusd0-integration-guide.md index d48f3a1fd5..7e1a1e7a16 100644 --- a/docs/defi/pyusd0-integration-guide.md +++ b/docs/defi/pyusd0-integration-guide.md @@ -21,39 +21,41 @@ keywords: sidebar_position: 9 sidebar_label: PYUSD0 Integration --- + # PYUSD0 Integration Guide ## Overview -This guide is for developers and protocols integrating PYUSD0 on Flow EVM. PYUSD0 is an OFT (Omnichain Fungible Token) deployed via LayerZero, replacing USDF as the canonical USD stablecoin on Flow. +This guide is for developers and protocols integrating PYUSD0 on Flow. PYUSD0 is an OFT (Omnichain Fungible Token) and brings pre-native PayPal USD support to Flow with seamless cross-chain transfers across 140+ chains via Stargate. It replaces USDF as Flow's canonical USD stablecoin. For users please read the [migration guide.][6] ## Contract Addresses ### Flow EVM Mainnet -| Contract | Address | -| ----- | ----- | -| [PYUSD0][2] | `0x99af3eea856556646c98c8b9b2548fe815240750` | +| Contract | Address | +| --------------------------------- | -------------------------------------------- | +| [PYUSD0][2] | `0x99af3eea856556646c98c8b9b2548fe815240750` | | [Migration Pool (USDF/PYUSD0)][3] | `0x6ddDFa511A940cA3fD5Ec7F6a4f23947cA30f030` | ### Flow Cadence Mainnet -| Token Name | Contract Address | Contract Name | -| ----- | ----- | ----- | +| Token Name | Contract Address | Contract Name | +| ----------- | -------------------- | ------------------------------------------------------------ | | [PYUSD0][1] | `0x1e4aa0b87d10b141` | `EVMVMBridgedToken_99af3eea856556646c98c8b9b2548fe815240750` | ### Testnet -**No official PYUSD0 testnet deployment.** For local testing, deploy the PYUSD contract directly: +| Contract | Address | +| ----------- | -------------------------------------------- | +| [PYUSD0][7] | `0xd7d43ab7b365f0d0789aE83F4385fA710FfdC98F` | -* [Paxos PYUSD Contract][4] -* This gives you a functionally equivalent token you can mint/control for testing. +This is a stand-in token for testing purposes only. Mainnet PYUSD0 requires real PYUSD locked via LayerZero. The testnet contract has a [mint function][8] and a [liquidity pool][9] so you can mint or swap tokens for development. ### **Deprecated (USDF)** -| Contract | Address | Status | -| ----- | ----- | ----- | -| USDF | `0x2aaBea2058b5aC2D339b163C6Ab6f2b6d53aabED` | Deprecating | +| Contract | Address | Status | +| -------- | -------------------------------------------- | ----------- | +| USDF | `0x2aaBea2058b5aC2D339b163C6Ab6f2b6d53aabED` | Deprecating | ## **Token Specifications** @@ -65,7 +67,9 @@ Standard: ERC-20 + LayerZero OFT Backing: 1:1 PYUSD (PayPal USD) ``` ---- +## About PYUSD0 + +PYUSD0 is a pre-native token deployed via LayerZero's Asset0 program, alongside other stablecoins like USDG0 (backed by Robinhood, Kraken, Mastercard) and AUSD0. It's fully backed 1:1 by PayPal USD. When Paxos later deploys native PYUSD directly on Flow, PYUSD0 balances will automatically upgrade with no user or developer action required. ## **Code Examples** @@ -73,13 +77,17 @@ Visit [the GitHub Repository][5] for code examples on bridging PYUSD0 via LayerZ ## **Migration Path for Existing USDF Integrations** -1. **Add PYUSD0 support** alongside USDF -2. **Update defaults** to use PYUSD0 instead of USDF -3. **Communicate to users** about migration timeline -4. **Deprecate USDF** after grace period +1. **Add PYUSD0 support** alongside USDF +2. **Update defaults** to use PYUSD0 instead of USDF +3. **Communicate to users** about migration timeline +4. **Deprecate USDF** after grace period [1]: https://www.flowscan.io/contract/A.1e4aa0b87d10b141.EVMVMBridgedToken_99af3eea856556646c98c8b9b2548fe815240750 [2]: https://evm.flowscan.io/token/0x99aF3EeA856556646C98c8B9b2548Fe815240750 [3]: https://evm.flowscan.io/token/0x6ddDFa511A940cA3fD5Ec7F6a4f23947cA30f030?tab=contract [4]: https://github.com/paxosglobal/paxos-token-contracts/blob/master/contracts/stablecoins/PYUSD.sol -[5]: https://github.com/onflow/flow-bridge-app/tree/main/ethereum-oapp \ No newline at end of file +[5]: https://github.com/onflow/flow-bridge-app/tree/main/ethereum-oapp +[6]: https://flow.com/post/pyusd0-migration-guide +[7]: https://evm-testnet.flowscan.io/address/0xd7d43ab7b365f0d0789aE83F4385fA710FfdC98F +[8]: https://evm-testnet.flowscan.io/token/0xd7d43ab7b365f0d0789aE83F4385fA710FfdC98F?tab=read_write_contract +[9]: https://flowswap.io/swap?chain=flow-testnet&inputCurrency=NATIVE&outputCurrency=0xd7d43ab7b365f0d0789aE83F4385fA710FfdC98F