The on-chain contracts for the Derive v3 testnet deployment on Ethereum
Sepolia. These are the settlement and custody contracts your own wallet
interacts with for deposits, withdrawals, and the L1 escape hatch.
Chain ID: 11155111
For the signing constants — ACTION_TYPEHASH, the EIP-712 domain, and the
per-action module addresses — see Action
signing.
ACTION_MANAGER
The L1 action inbox. Your own wallet calls this settlement contract to submit
on-chain actions — most importantly direct (self-custody) deposits, which
create your account and its first subaccount. See Depositing.
VAPP
The zk-vApp settlement contract. It anchors the protocol’s on-chain state root
and verifies the validity (zero-knowledge) proofs that settle every state
transition — the root of custody and settlement for the deployment.
WITHDRAWAL_OUTBOX
The L1 withdrawal outbox. Finalized withdrawals — and the escape-hatch exit
if the operator goes offline — are claimed here; payouts are pulled from the spot
vault through this contract.
SPOT_VAULT
The ERC-20 escrow vault. It custodies the actual spot tokens backing on-protocol
balances: deposits land here, and withdrawals are paid out from it
(SpotVault.withdraw → IERC20.transfer).
Mainnet contract addresses are not published in this repository — read them
from the mainnet deployment.