Production: Base mainnet
| Contract | Address |
|---|---|
| BatchSettler | 0xd281ADdB8b5574360Fd6BFC245B811ad5C582a3B |
| Controller | 0x2Ab6D1c41f0863Bc2324b392f1D8cF073cF42624 |
| MarginPool | 0xa1e04873F6d112d84824C88c9D6937bE38811657 |
| OTokenFactory | 0x0701b7De84eC23a3CaDa763bCA7A9E324486F6D7 |
| Oracle | 0x09daa0194A3AF59b46C5443aF9C20fAd98347671 |
| Whitelist | 0xC0E6b9F214151cEDbeD3735dF77E9d8EE70ebA8A |
| AddressBook | 0x48FE24a69417038a2D3d46B2B6B9De03b884eD72 |
| USDC | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 |
| WETH | 0x4200000000000000000000000000000000000006 |
| cbBTC | 0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf |
Production: Solana mainnet
| Program / Account | Address |
|---|---|
| b1nary Batch Settler | GpR6id2cHu5fUGsFm7NUKkB4NzfuEDa6brPzkSrgAzvS |
| Solana Margin Pool | FH3z4BYRZMFU8YzpJoFXUbrdoYksdERnWbZvDAEc3qcC |
| CCTP V2 Token Messenger Minter | CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe |
| CCTP V2 Message Transmitter | CCTPV2Sm4AdWt5296sk4P66VBZ7bEhcARwFaaS9YPbeC |
| USDC Mint | 4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU |
| wSOL Mint | So11111111111111111111111111111111111111112 |
| TSLAx Mint | XsDoVfqeBukxuZHWhdvWHBhgEHjGNst4MLodqsJHzoB |
Testnet (Base Sepolia)
| Contract | Address |
|---|---|
| BatchSettler | 0x766bD3aF1D102f7EbcB65a7B7bC12478C2DbA918 |
| Controller | 0xB64a532B71E711B5F45B906D9Fc09c184EC54CA0 |
| MarginPool | 0x727ddBD04A691E73feaE26349F48144953Ef20d6 |
| OTokenFactory | 0x1cEA6AE65c06972249831f617ea196863Fb66e6D |
| Oracle | 0x101cB9E8a3105EfB18A81E768238eFc041F31E15 |
| Whitelist | 0xda732e343cfAd50Df28881B66f111779671a17E1 |
| AddressBook | 0x9e8cd9a79d667f4154e123604bF62d35a3d9673C |
| LUSD (mock USDC) | 0xAB51a471493832C1D70cef8ff937A850cf37c860 |
| LETH (mock WETH) | 0x8A6Aa2304797898d46eC1d342Fedc817D3a973B6 |
| LBTC (mock cbBTC) | 0x39fA11EbBE82699Fd9F79C566D7384064571d2b4 |
Key functions
Base: executeOrder
Quote struct:
GET /prices response. amount is in oToken units (8 decimals, 1e8 = 1 ETH notional).
Base collateral calculation
Puts:Solana: ExecuteOrder
Solana quotes fromGET /prices map to the Solana b1nary Batch Settler ExecuteOrder instruction.
Important execution rules:
- USDC and wSOL use the SPL Token Program.
- TSLAx uses Token-2022:
TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb. - SOL covered calls wrap SOL to wSOL before execution when wSOL collateral is insufficient.
- The operator/hot wallet sponsors setup and transaction fees where supported.
- The user’s Solana embedded trading wallet signs only where token ownership authority is required.
Solana collateral calculation
Puts:CCTP V2 bridge
Circle CCTP V2 is used to consolidate USDC across Base and Solana.- Base -> Solana:
mintRecipientmust be the user’s Solana USDC token account (ATA), not the wallet owner. Backend validates or creates the ATA before reserving the bridge. - Solana -> Base:
mintRecipientis the Base smart trading account encoded as bytes32. - Agents should wait for the actual minted amount before executing a destination-chain trade; CCTP fees/rounding can make the received amount lower than the burn amount.
makerNonce
incrementMakerNonce
getVault
shortOtoken, collateralAsset, shortAmount, collateralAmount.