Which pool to use
Always send transactions to the pool proxy, never to the implementation.
Ethereum mainnet
Core contracts
The pool was deployed in block 25,647,575 on 2026-07-30. The current implementation has been live since 2026-10-06. The paymaster is the one named in each transaction’s fee data. The proof binds that address, so a client must use the current one. The two earlier paymasters are retired.
Assets
Seven assets are registered, and all are active. The asset id is what you put in a transaction. Ids are specific to a pool.
The three assets with no price feed (wstETH, gtWETH and steakUSDC) are adaptor outputs. They enter the pool only through an adaptor, and a direct deposit of an asset with no feed is not accepted. wstETH comes from the Lido adaptor. gtWETH and steakUSDC come from the Morpho adaptor.
Adaptors
All four are registered with the pool. A registered adaptor is the address you pass asto in an adaptor call.
The protocol also contains adaptors for Curve, Ethena, 1inch, Rocket Pool and Beefy. They are not deployed on Ethereum mainnet and are not live.
Verifiers
The verifier router maps each circuit to its verifier. The proving keys behind them come from the ZK ceremony.HyperEVM mainnet
Core contracts
The pool was deployed in block 47,282,989 on 2026-09-30, from the same code as the Ethereum implementation. HyperEVM has no ERC-4337 bundler, so a relayer submits transactions. A Gateway (
0x6e1dAA932ed0e15cD4590e53F64554c576bcbcC4) and a Paymaster (0x44e76C26fc9B988Ce9731d1795b1bbFA85ECa4c5) contract exist on HyperEVM, and the relayer path does not use them.
Assets
Two assets are registered, and both are active.
The address
0x6B9E773128f453f5c2C60935Ee2DE2CBc5390A24 is Circle’s USDC deposit contract, not a token. It is where the funding adaptor sends USDC. Do not use it as an asset address.
Private Sub-account contracts
The funding adaptor is registered with the pool. It takes USDC only. It refuses amounts below 1 USDC, and that minimum is fixed in the contract. The GasStation sells 0.0005 HYPE for 0.05 USDC. Its owner is the same account as the pool’s. The relayer account is the address a relayed transaction must name as its paymaster. The same relayer also answers at
https://trade.veilnyx.com/relayer-mainnet for now. Read the live relayer account from GET /quote. See Relayer API.
An earlier funding adaptor with a 5 USDC minimum (0xD53877E00868A7924975f4d3BA8E596a3038D6a5) is retired.
Verifiers
HyperEVM reuses the proving keys from the Ethereum ceremony. All nine verifier contracts have the same bytecode as Ethereum’s. The code hashes were compared on 2026-10-16.Disclosure network
One revoker serves both mainnet pools. Revoker id 0 is registered and active on Ethereum and on HyperEVM. Decom guardians hold the shares of the disclosure key. The revoker keeps a report of what it de-anonymized on Palliora DA. Only the revoker, or any third party the revoker grants access to, can read it. See Accountable privacy and disclosure and Palliora integration.
The request manager was deployed in block 25,648,509 on 2026-07-30. The pool stores each revoker’s keys. Revoker id 0 has these:
The disclosure key is the guardians’ shared key plus the revoker public key. Each coordinate is given unpacked, so you can compare it with what the SDK uses.
Test networks
On Sepolia, the pool is unpaused and reports revision 1, read on 2026-10-16. Use this pool and request manager and no others.
The HyperEVM testnet pool is from the deployment record of 2026-08-24. It is not re-read here. It runs a mock sanctions screener and a mock price feed. Its verifier keys were generated locally by one contributor, so the secret behind them is known, and anyone can forge a proof on that network. Use it only to test, and never mix its proving keys with mainnet’s.
How these values were read
Each value came from a read-only call to the network, so you can repeat it. This example reads the Ethereum pool’s limits with Foundry:10000000 means $10. If a value here differs from the network, the network is right.