Skip to main content
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

ContractSymbolAddress
RegistryREGISTRYCC35XWCH7SCQROTNW7PA6HZKP4JMNSVV2K7CX3HY2PSI2MI2ZQQH73ID
OracleORACLECB72D6SOUHUTCESXYOQOBMP6MRSH47NBYIBH73BBRH3ZRT53LPTB6R7V
Rate ModelRATE_MODELCCJAUPCU6EIFQK6GTAAYLW3Y4YETJAAUPAGBPFGQ2OUJPSW3WWHUCL2Z
Risk EngineRISK_ENGINECBL7RCG5H4VIZCNF7BRM2FQFXK7N5KRQKW7ZVEQZJKNXHA6FEU4OXK5I
Account ManagerACCOUNT_MANAGERCAK2IJIO2SKZWUODY4G7ZRIUUIIMJUUAIXE3I5YTQ5QYNSS2RYJ3P4CV
Smart Account (template hash)SMART_ACCOUNT_TEMPLATECDD7DEIRLFP36WCU7IHH3ACGBXM7QW3IBTYTRYXM3PV2NFGOKZI3XFWL
Tracking TokenTRACKING_TOKENCA24GDWO63ZXNMW5FLWF2KMZ5DCF3DO7J3RYABFICDIDHH4A342RD2TR

Lending Pools

PoolAddress
XLM Lending PoolCBA4E4ZMXUKCDTNT7LDKSO3LGNGKHRCE4GUVPSRCAKU3TKAONUY7SVOB
USDC Lending PoolCABLEI2ZPCWLO2FQRHJJYR7JW75BCCPN2ZIV5BX7CHPXZT4CZVTGUOBU
Aquarius USDC Lending PoolCCRP3OQLKSOAYGDOF4EMPR5VOHM7XHT77XISPIBRYUWKBICM5LSJFON4
Soroswap USDC Lending PoolCBSKSUD2EBZAGVWBN747MI7CESXFG5LUBJGLP5CXF4BBAWAFQJ7ABJNO

vTokens (LP Share Tokens)

TokenSymbolAddress
Vanna XLM vTokenvXLMCCQAAPNBYF6I7PRM2NZ4NRDYZUVJJANMX3RZ4ZLMQH6Z5WAUL2MHU2RZ
Vanna USDC vTokenvUSDCCDAJHQEJ26EBBGV2UYSR5S5LLA6F3A7KQISLPY5JMOL77RUDBEWG3T6Y
Vanna Aquarius USDC vTokenvAQUSDCCATGJWK22YGAQX4DH6BXUMQYRZRGOQ6MJNJVZP67WZEE4PHSROU763KN
Vanna Soroswap USDC vTokenvSOUSDCCDW5YJOBAR5KUPYQ5LQICSLKWRUMDEGSZVS5A4QNBMNKEZEARR6EJFYT

Native Token Contracts (Stellar Asset Contracts)

AssetAddress
XLM (native SAC)CDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC
USDC (Blend testnet)CAQCFVLOBK5GIULPNZRGATJJMIZL5BSP7X5YJVMGCPTUEPFM4AVSRCJU
Aquarius USDCCAZRY5GSFBFXD7H6GAFBA5YGYQTDXU4QKWKMYFWBAZFUCURN3WKX6LF5
Soroswap USDCCB3TLW74NBIOT3BUWOZ3TUM6RFDF6A4GVIRUQRQZABG5KPOUL4JJOV2F

Blend Capital (External Protocol)

Vanna integrates with Blend Capital as an external yield destination for margin accounts.
ContractAddress
Blend Pool (TestnetV2)CCEBVDYM32YNYCVNRXQKDFFPISJJCV557CDZEIRBEE4NCV4KHPQ44HGF
Blend Backstop (V2)CBDVWXT433PRVTUNM56C3JREF3HIZHRBA64NB2C3B2UNCKIS65ZYCLZA
Blend EmitterCC3WJVJINN4E3LPMNTWKK7LQZLYDQMZHZA7EZGXATPHHBPKNZRIO3KZ6
BLND TokenCB22KRA3YZVCNCQI64JQ5WE7UY2VAV7WFLK6A2JN3HEX56T2EDAFO7QF
Blend XLM ReserveCDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC
Blend USDC ReserveCAQCFVLOBK5GIULPNZRGATJJMIZL5BSP7X5YJVMGCPTUEPFM4AVSRCJU

Aquarius (External AMM)

Vanna integrates with Aquarius for AMM liquidity and swap operations.
ContractAddress
Aquarius RouterCBCFTQSPDBAIZ6R6PJQKSQWKNKWH2QIV3I4J72SHWBIK3ADRRAM5A6GD
Aquarius XLM/USDC PoolCD3LFMMLBQ6RBJUD3Z2LFDFE6544WDRMWHEZYPI5YDVESYRSO2TT32BX
Aquarius XLM/AQUA PoolCCSXYUVLYALKJGIIYMGYLZI447VS6TDWFTVDL43B4IKK2WERHLWUVCRC
Aquarius XLM/USDT PoolCA6DAGOMK5D7GKBNWVCIEAYSTPJXLQUFWFKSZOMNEM6BVOTUBDCTIT5I
AQUA TokenCAZRY5GSFBFXD7H6GAFBA5YGYQTDXU4QKWKMYFWBAZFUCURN3WKX6LF5

Soroswap (External DEX)

Vanna integrates with Soroswap for spot swaps from margin accounts.
ContractAddress
Soroswap RouterCCJUD55AG6W5HAI5LRVNKAE5WDP5XGZBUDS5WNTIVDU7O264UZZE7BRD
Soroswap FactoryCDP3HMUH6SMS3S7NPGNDJLULCOXXEPSHY4JKUKMBNQMATHDHWXRRJTBY
Soroswap XLM/USDC PairCDVAIOYHCD4RUSLQNVFI7RIZBFT2JZMJWM4RTOLQZQXL4QAVXU5RFKDB

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.
PoolLending ProtocolvTokenNative Token
XLMCAOPI6NYPXEVMDRTUWAGMWNSIXMBCBDSJBJARLIUJB6LNRPQCCJUN3VOCC7XU2DPNVYB5FFNX7XR4LEEEZFOSLTOBSCY6AXXIYUONYKTFMLYZ4ZTCDLZFC3SYJYDZT7K67VZ75HPJVIEUVNIXF47ZG2FB2RMQQVU2HHGCYSC
USDCCBMZVGZCQWI35OYTLH7PLHJXFE7GHXD5CTNT2CYWBD4URVKTWQQRVN3QCCN6O2Y2KKXZCFDEI7XI2W3K4SVI2634YEPRTJVKAYS22QH3QFQNS5FOCAQCFVLOBK5GIULPNZRGATJJMIZL5BSP7X5YJVMGCPTUEPFM4AVSRCJU
AQ USDCCCIC7KKEZFONJSDRIML2MEWDC67DVHRGVTUYP6UPR4UQURPCB44O6N5DCCY44CN4V725LP2PQBLTM27Q3UEGNM76PKVG7IZF3L74DX4FLSDUJA7SCAZRY5GSFBFXD7H6GAFBA5YGYQTDXU4QKWKMYFWBAZFUCURN3WKX6LF5
SO USDCCA55DFIQG6O2VO4PW23LSG7VQH45HQ3KG75N4VVIJCLQKULT4Z7BMS32CCMI4Y6LQ7SA3WKBEK463IG47EBBJ4UCCOQNPC7RTYN53ARJ63J55DZDCB3TLW74NBIOT3BUWOZ3TUM6RFDF6A4GVIRUQRQZABG5KPOUL4JJOV2F

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.