BETA — mainnet live (chain 482120); features are still being finished. Transparency →
Bitcoin Swap BETA Chain 482120
Developers · Get started

Contract addresses

Every live contract, grouped by function. Machine-readable: contracts.json.

Get started › Contract addresses

All contracts on the 482120 side are verified on explorer.btcw.tech (the ISM of each bridge core — 0x6003…e817 for USDC/USD₮0, 0xf6c9…06a3 for the sealed WBTC route — is a 214-byte EIP-3448 MetaProxy with no source of its own; their implementations 0xb296e5632e2957c6fcda3efcc0fcf758ee5ddb54 and 0x1f8410baba198fa9d467bc028a199b3501a2c880 are verified). Arbitrum side: exact match on Sourcify / arbitrum.blockscout.com. Machine-readable version (addresses + ABIs): /developers/contracts.json.

Always identify assets by chainId + address. Symbols such as BTCW and USDW are already used by unrelated assets on other chains.

Assets

NameAddress (482120)Notes
BTCwnative coin — the API uses 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeEpays gas; paired in every pool
USDw0x3b5BD179CA6Aab4DAF0f842829776843ABe6e727ERC-20, 18 decimals; the asset of the bridge and OracleAMM
TokenFactory0xa4860BdfaE9B2881B1B593aFFC8740d926eCC1d1creates the 321 price-tracker tokens (100 crypto, 201 US stocks, 20 US ETFs); token list: /api/v2/swap/assets

Swap

NameAddress (482120)Notes
ClpPools0x557aDc3d900c471F3907cdDA3a9F5377d6F9E7e0322 THORChain-style pools, each paired with BTCw
UsdClpPools0x78aCB6Ec7aF4cc83BF9E698706de79c08D61C13fR-61: 321 THORChain-style pools, each paired with USDw (a second set beside ClpPools)
UsdRebalancer0xF9DAD09811755b8cf4863ed880AdD6F92358623Dkeeps the UsdClpPools pools near the PriceHub price from its own inventory; mints nothing
OracleAMM0xd953d53414a81eb6AC5a4edE73d13992181aF51EBTCw ⇄ USDw at the oracle price ± 0.3%
OracleTokenAMM (ETHw)0xFd6d78A3b60175D37146793396A2FA7864039D54ETHw ⇄ USDw at the oracle price ± 0.3%; the bridge's ETHw destination
SwapRouter0x397E607eA05eF7909f84540077F3a716778031E4chains up to 4 hops across ClpPools / OracleAMM / the ETHw vault into one transaction; ownerless
OracleRebalancer0x6c811003D301769575e9A8661B9197FAf2A32e69pulls token pool prices back to the oracle (crypto and stocks); minter of all 321 price-tracker tokens

WBTCw / USDC.e pool (Uniswap V2)

Official, unmodified Uniswap V2 on chain 482120 — pair init code hash 0x96e8ac42…845f. UI: /pool/. Deployed by the Owner wallet 0xB17b…d952 on 3 Oct 2026.

NameAddress (482120)Notes
WBTCw0xA7182E25e635108AD401E3be78f1c2A4593B8831Wrapped BTCw, 18 decimals; minted only by the BTCw vault against WBTC locked on Arbitrum One; withdraw unwraps 1:1 any time; no owner
USDC.e0x7b56B7B06B8e586064787E7FfE466Ab6B78C31C7Bridged USDC (Bitcoin Swap), 6 decimals; 1:1 with USDC locked in the Arbitrum router below
UniswapV2Factory0x453F946CB371a2039137453BAafFb83FF4ccf9f7feeToSetter = Owner wallet, feeTo unset
UniswapV2Router020x436997135b9332B2dFa1B20e6B24f0987778a246WETH slot = WBTCw
Pair WBTCw / USDC.e0xED2967B738d98B3e4D3e6780A08Dc161A55EF304token0 = USDC.e; 0.30% fee; opened at the Chainlink BTC/USD price; LP in the Owner wallet, unlocked
Peg keeper0xe20dA14F7A9715Ba685048292e53C05c097E766Dswaps its own inventory when the pool drifts more than 0.5% from Chainlink BTC/USD; holds no other rights

Oracle

NameAddress (482120)Notes
BtcwPriceFeed0x6E0687A5D5a5b98CC5fb05c4d8d742fBD75ba96cBTC/USD, Chainlink AggregatorV3-compatible, 8 decimals
PriceHub0xE87FDdCC0b668564a20B23F3bE1EE108C805ecb4USD prices of the 321 price-tracker tokens, 18 decimals

Bridge

RouteArbitrum One (42161)Bitcoin Swap (482120)
USDC router 0x10B5757aC9a40E3467846e35749ae30b00ef0182
token USDC 0xaf88d065e77c8cC2239327C5EDb3A432268e5831
router 0x10EDFF80C17A39940a4dc724b9c24fE9D2E8Fd9b
token USDw
USD₮0 router 0x984fDC24D1A2Be538C7290487d0fc212635D98A5
token USD₮0 0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9
router 0xD6d8452FdCC26B155BEc4fc878635c05CaC95FB1
token USDw
Mailbox0xBf4E868aE56870DC92dC906E1ad21ce038EF31980x489DC54c2d2f7df9175d7F99716094C85E008392

Dedicated core — WBTC and USDC routes (R-52)

A second Hyperlane core, owned by the Owner wallet 0xB17b…d952, with sealed routes: fixed verifier, counterpart enrolled once and never changeable, no fees. Allowlist on (Owner wallet only) at 3 Oct 2026.

RouteArbitrum One (42161)Bitcoin Swap (482120)
WBTC ⇄ BTCw router 0x9A37C4a711b23Ae3508E0Dbd8d994ae98c92A86A
token WBTC 0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f
vault 0x10Ecc6EF494D0Ec1A1446a30026951b0923F3606
native BTCw (released from the vault's unissued supply; 8 ↔ 18 decimals)
USDC ⇄ USDC.e router 0x1e458688336872Eb744Ccb588C7775480675b2A6
token USDC 0xaf88d065e77c8cC2239327C5EDb3A432268e5831
token = router 0x7b56B7B06B8e586064787E7FfE466Ab6B78C31C7
USDC.e, 6 decimals
Mailbox0x11A6a8348ab4307A7e9974413f6963025AD70A4E0x148889eE67A6EB672171024086fC9819B6424142

Standard infrastructure

Same addresses as on Ethereum and other EVM chains, deployed 5 Oct 2026 through the deterministic CREATE2 deployer with the exact Ethereum-mainnet calldata, so tools that expect these addresses work without extra configuration. Source is verified on the explorer.

NameAddress (482120)Notes
CREATE2 deployer0x4e59b44847b379578588920cA78FbF26c0B4956CArachnid deterministic-deployment-proxy; calldata = salt (32 bytes) ++ initcode
Permit20x000000000022D473030F116dDEE9F6B43aC78BA3Uniswap token approvals; EIP-712 domain uses chain 482120
EntryPoint v0.70x0000000071727De22E5E9d8BAf0edAc6f37da032ERC-4337 smart accounts
Safe 1.3.00xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552Safe multisig
SafeL2 1.3.00x3E5c63644E683549055b9Be8653de26E0B4CD36ESafe multisig
SafeProxyFactory 1.3.00xa6B71E26C5e0845f74c812102Ca7114b6a896AB2Safe multisig
CompatibilityFallbackHandler 1.3.00xf48f2B2d2a534e402487b3ee7C18c33Aec0Fe5e4Safe multisig
MultiSend 1.3.00xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761Safe multisig
MultiSendCallOnly 1.3.00x40A2aCCbd92BCA938b02010E17A5b8929b49130DSafe multisig
CreateCall 1.3.00x7cbB62EaA69F79e6873cD1ecB2392971036cFAa4Safe multisig
SignMessageLib 1.3.00xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2Safe multisig
SimulateTxAccessor 1.3.00x59AD6735bCd8152B84860Cb256dD9e96b85F69DaSafe multisig
Multicall30xA0093EA76633A983364cb2582959870eaffDdea0Same bytecode as the usual Multicall3, at this chain's own address (not 0xcA11…CA11)

Owner and Treasury wallets

Published so you can filter or monitor them yourself:

RoleAddress
Owner — owns every contract above, on both chains0x4aFd0A931176103d704Ff0d696614d4E10d74A4a
Owner wallet B — owns the dedicated core, its routes, WBTCw and the Uniswap V2 pool0xB17bdA8F14EEb9fd67B34810A2e1E82A737Ad952
Treasury arbitrage bot (USDw pool)0x4b3418e3d21932610faafef8caefdb0f2c05a836

The Dashboard and /api/v2/stats report the volume of the bot and OracleRebalancer separately (the treasury_addresses field) — these are the trades that keep pool prices near the oracle. Owner permissions: Trust model.