Contract addresses
Latest deployment: v11b on Avalanche C-Chain (chain ID 43114).
Governance
| Contract | Address | Role |
|---|---|---|
| BOSS | 0x5630140E6eCB6242615E9E628095E1A4Ce3903c3 | Protocol owner (multisig) |
| ACMA | 0x61ea9e262D959506E3Fe6AF153C66058ff62A1Bf | Access-control manager (OpenZeppelin AccessManager) |
| CAPS | 0x682Af53E936c78f9A976176d822482952f7D4c86 | Delta-based cap wrapper (incSupply/decSupply/incBorrow/decBorrow) |
| POLS | 0x1953410bdFFfc7E706f21F293fb4002D5aF7C9d6 | Protocol-owned-liquidity fetch wrapper (fetch variants) |
CAPS and POLS are supervised singletons deployed alongside the core contracts; they receive per-pool roles at enrollment. See Caps wrapper and circuit breaker and Fetching POL.
Tokens
BTC.b is deployed as a recognised collateral token but has no live pool yet.
Pools and oracles
Each pool pairs two tokens; the oracle (a Seer EWMA price-tracker) reports the spot/TWAP price of one asset in units of the other. The first column is the pool's canonical pair name.
Per-pool position contracts (supply position, borrow position, vault) are read off the pool itself:
IPool pool = IPool(0xF800FD1fCF74a5aB583A32E336dd126d360712dB);
ISupplyPosition supply = pool.supplyOf(IERC20(APOW));
IBorrowPosition borrow = pool.borrowOf(IERC20(XPOW));The supply/borrow positions are ERC20Permit tokens (with the protocol's locking and cap features). A separate ERC4626 wrapper, WSupplyPosition (interface IWPosition), is available for tooling that expects a vault interface. Only supply positions are wrappable — there is no WBorrowPosition.
Source verification
All deployed contracts have verified source on snowscan.xyz. The deployment commit hash matches the corresponding tag in the source repository.
Where to go next
- Integration guide — how to wire up to these contracts
- Architecture overview — what each contract does
- CLI and tools — interact from the command line via
banq-cli