All contracts are deployed on Stellar Testnet. Mainnet addresses will be published at launch.
Network passphrase: Test SDF Network ; September 2015
Soroban RPC: https://soroban-testnet.stellar.org
Horizon: https://horizon-testnet.stellar.org
Core Protocol Contracts
| Contract | Symbol | Address |
|---|
| Registry | REGISTRY | CC35XWCH7SCQROTNW7PA6HZKP4JMNSVV2K7CX3HY2PSI2MI2ZQQH73ID |
| Oracle | ORACLE | CB72D6SOUHUTCESXYOQOBMP6MRSH47NBYIBH73BBRH3ZRT53LPTB6R7V |
| Rate Model | RATE_MODEL | CCJAUPCU6EIFQK6GTAAYLW3Y4YETJAAUPAGBPFGQ2OUJPSW3WWHUCL2Z |
| Risk Engine | RISK_ENGINE | CBL7RCG5H4VIZCNF7BRM2FQFXK7N5KRQKW7ZVEQZJKNXHA6FEU4OXK5I |
| Account Manager | ACCOUNT_MANAGER | CAK2IJIO2SKZWUODY4G7ZRIUUIIMJUUAIXE3I5YTQ5QYNSS2RYJ3P4CV |
| Smart Account (template hash) | SMART_ACCOUNT_TEMPLATE | CDD7DEIRLFP36WCU7IHH3ACGBXM7QW3IBTYTRYXM3PV2NFGOKZI3XFWL |
| Tracking Token | TRACKING_TOKEN | CA24GDWO63ZXNMW5FLWF2KMZ5DCF3DO7J3RYABFICDIDHH4A342RD2TR |
Lending Pools
| Pool | Address |
|---|
| XLM Lending Pool | CBA4E4ZMXUKCDTNT7LDKSO3LGNGKHRCE4GUVPSRCAKU3TKAONUY7SVOB |
| USDC Lending Pool | CABLEI2ZPCWLO2FQRHJJYR7JW75BCCPN2ZIV5BX7CHPXZT4CZVTGUOBU |
| Aquarius USDC Lending Pool | CCRP3OQLKSOAYGDOF4EMPR5VOHM7XHT77XISPIBRYUWKBICM5LSJFON4 |
| Soroswap USDC Lending Pool | CBSKSUD2EBZAGVWBN747MI7CESXFG5LUBJGLP5CXF4BBAWAFQJ7ABJNO |
vTokens (LP Share Tokens)
| Token | Symbol | Address |
|---|
| Vanna XLM vToken | vXLM | CCQAAPNBYF6I7PRM2NZ4NRDYZUVJJANMX3RZ4ZLMQH6Z5WAUL2MHU2RZ |
| Vanna USDC vToken | vUSDC | CDAJHQEJ26EBBGV2UYSR5S5LLA6F3A7KQISLPY5JMOL77RUDBEWG3T6Y |
| Vanna Aquarius USDC vToken | vAQUSDC | CATGJWK22YGAQX4DH6BXUMQYRZRGOQ6MJNJVZP67WZEE4PHSROU763KN |
| Vanna Soroswap USDC vToken | vSOUSDC | CDW5YJOBAR5KUPYQ5LQICSLKWRUMDEGSZVS5A4QNBMNKEZEARR6EJFYT |
Native Token Contracts (Stellar Asset Contracts)
| Asset | Address |
|---|
| XLM (native SAC) | CDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC |
| USDC (Blend testnet) | CAQCFVLOBK5GIULPNZRGATJJMIZL5BSP7X5YJVMGCPTUEPFM4AVSRCJU |
| Aquarius USDC | CAZRY5GSFBFXD7H6GAFBA5YGYQTDXU4QKWKMYFWBAZFUCURN3WKX6LF5 |
| Soroswap USDC | CB3TLW74NBIOT3BUWOZ3TUM6RFDF6A4GVIRUQRQZABG5KPOUL4JJOV2F |
Blend Capital (External Protocol)
Vanna integrates with Blend Capital as an external yield destination for margin accounts.
| Contract | Address |
|---|
| Blend Pool (TestnetV2) | CCEBVDYM32YNYCVNRXQKDFFPISJJCV557CDZEIRBEE4NCV4KHPQ44HGF |
| Blend Backstop (V2) | CBDVWXT433PRVTUNM56C3JREF3HIZHRBA64NB2C3B2UNCKIS65ZYCLZA |
| Blend Emitter | CC3WJVJINN4E3LPMNTWKK7LQZLYDQMZHZA7EZGXATPHHBPKNZRIO3KZ6 |
| BLND Token | CB22KRA3YZVCNCQI64JQ5WE7UY2VAV7WFLK6A2JN3HEX56T2EDAFO7QF |
| Blend XLM Reserve | CDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC |
| Blend USDC Reserve | CAQCFVLOBK5GIULPNZRGATJJMIZL5BSP7X5YJVMGCPTUEPFM4AVSRCJU |
Aquarius (External AMM)
Vanna integrates with Aquarius for AMM liquidity and swap operations.
| Contract | Address |
|---|
| Aquarius Router | CBCFTQSPDBAIZ6R6PJQKSQWKNKWH2QIV3I4J72SHWBIK3ADRRAM5A6GD |
| Aquarius XLM/USDC Pool | CD3LFMMLBQ6RBJUD3Z2LFDFE6544WDRMWHEZYPI5YDVESYRSO2TT32BX |
| Aquarius XLM/AQUA Pool | CCSXYUVLYALKJGIIYMGYLZI447VS6TDWFTVDL43B4IKK2WERHLWUVCRC |
| Aquarius XLM/USDT Pool | CA6DAGOMK5D7GKBNWVCIEAYSTPJXLQUFWFKSZOMNEM6BVOTUBDCTIT5I |
| AQUA Token | CAZRY5GSFBFXD7H6GAFBA5YGYQTDXU4QKWKMYFWBAZFUCURN3WKX6LF5 |
Soroswap (External DEX)
Vanna integrates with Soroswap for spot swaps from margin accounts.
| Contract | Address |
|---|
| Soroswap Router | CCJUD55AG6W5HAI5LRVNKAE5WDP5XGZBUDS5WNTIVDU7O264UZZE7BRD |
| Soroswap Factory | CDP3HMUH6SMS3S7NPGNDJLULCOXXEPSHY4JKUKMBNQMATHDHWXRRJTBY |
| Soroswap XLM/USDC Pair | CDVAIOYHCD4RUSLQNVFI7RIZBFT2JZMJWM4RTOLQZQXL4QAVXU5RFKDB |
Earn Pool Constants (per pool)
These are the addresses used by the frontend earn integration. Each pool has a lending protocol contract, a vToken contract, and a native token contract.
| Pool | Lending Protocol | vToken | Native Token |
|---|
| XLM | CAOPI6NYPXEVMDRTUWAGMWNSIXMBCBDSJBJARLIUJB6LNRPQCCJUN3VO | CC7XU2DPNVYB5FFNX7XR4LEEEZFOSLTOBSCY6AXXIYUONYKTFMLYZ4ZT | CDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC |
| USDC | CBMZVGZCQWI35OYTLH7PLHJXFE7GHXD5CTNT2CYWBD4URVKTWQQRVN3Q | CCN6O2Y2KKXZCFDEI7XI2W3K4SVI2634YEPRTJVKAYS22QH3QFQNS5FO | CAQCFVLOBK5GIULPNZRGATJJMIZL5BSP7X5YJVMGCPTUEPFM4AVSRCJU |
| AQ USDC | CCIC7KKEZFONJSDRIML2MEWDC67DVHRGVTUYP6UPR4UQURPCB44O6N5D | CCY44CN4V725LP2PQBLTM27Q3UEGNM76PKVG7IZF3L74DX4FLSDUJA7S | CAZRY5GSFBFXD7H6GAFBA5YGYQTDXU4QKWKMYFWBAZFUCURN3WKX6LF5 |
| SO USDC | CA55DFIQG6O2VO4PW23LSG7VQH45HQ3KG75N4VVIJCLQKULT4Z7BMS32 | CCMI4Y6LQ7SA3WKBEK463IG47EBBJ4UCCOQNPC7RTYN53ARJ63J55DZD | CB3TLW74NBIOT3BUWOZ3TUM6RFDF6A4GVIRUQRQZABG5KPOUL4JJOV2F |
Smart Account addresses are per-user and determined at account creation time. To find a user’s smart account address, call Registry.get_accounts(user_address) or listen for AccountCreationEvent from the AccountManager contract.
These addresses are testnet only. Do not send mainnet assets to testnet addresses.