Deployments
BTR runs on one live chain today: the Arc public testnet, chainId 5042002. Six further chains are deployment targets and are listed below with no addresses, so that an integrator can see what is coming and can tell it apart from what is live. This section records what is deployed there, which assets the four pools list, and how each testnet asset maps to the mainnet token it imitates. Every address and roster on these pages is generated from the per-chain deployment artifacts, so a redeploy regenerates them rather than anyone editing them by hand.
1. Testnet policy
Every chain is a row, keyed by chainId. Adding a chain adds a row.
| Chain | chainId | Status | Notes |
|---|---|---|---|
| Arc Testnet | 5042002 | Live public testnet | Routing hub USDC.b (mintable faucet twin). Native USDC (0x3600…) is Circle’s testnet / gas token, not faucet-mintable |
| Arc | 5042 | Planned | Native gas USDC |
| Ethereum | 1 | Planned | Native gas ETH |
| BNB Chain | 56 | Planned | Native gas BNB |
| Base | 8453 | Planned | Native gas ETH |
| Arbitrum | 42161 | Planned | Native gas ETH |
| X Layer | 196 | Planned | Native gas OKB |
| Monad | 143 | Planned | Native gas MON |
| Robinhood Chain | 4663 | Planned | Native gas ETH |
Planned means the chain is a deployment target awaiting its launch. Rows populate in Contract Addresses at deploy time, generated from that chain’s artifacts; until then, point an integration at Arc testnet.
Native gas differs across them and is not ETH everywhere: BNB Chain pays in BNB, X Layer in OKB,
Monad in MON. Quoting a fee in ETH on X Layer is a three-orders-of-magnitude error. Arc is its own
case again: gas there is native USDC. The authority for every one of these is the SDK chain
registry (@btr-protocol/sdk, src/eth/chains.ts), not this table.
The app is chain-agnostic: it reads the published per-chain deployment artifacts for whichever chain is selected. Docs do the same - Contract Addresses is generated per chainId.
On testnet chains, pool assets are BTR-deployed ERC-20 mocks except official Circle USDC/EURC. Mocks are mainnet-faithful:
- same
decimalsas the mainnet reference token; - EIP-2612
permitwhere the mainnet token has it (per-asset oddities in Asset Registry); - minted via on-app Faucet (
TestnetFaucet) under daily caps.
Mainnet addresses are reference metadata only: they pin the NXR feed mapping and the mock fidelity target (decimals, permit behavior).
Marks for every listed asset arrive via the signed keeper push pipeline; provenance and on-chain verification in Oracle Price-Push Security.
Addresses are generated per chain from the deployment artifacts, never hand-typed. Which of them can change, and under what delay: Contract Addresses §Upgradeability.
2. Pages
| Page | Content |
|---|---|
| 2.1. Contract Addresses | Generated addresses, one section per chainId |
| 2.2. Asset Registry | Assets: mainnet reference, decimals, NXR feed route |
| 2.3. Pool Composition | Stable / FX / Crypto / Stocks cores; hub = USDC.b |