Multi-chain liquid staking provider issuing ETHx (Ethereum), MaticX (Polygon PoS), BNBx (BNB Chain), HBARx (Hedera), FTMx, and SD-staking. Permissionless validator onboarding via the Stader Permissionless Pool on Ethereum.
- 01ETHx liquid staking
- 02MaticX / BNBx / HBARx multi-chain LST
- 03running a Stader permissionless validator
- 04DeFi composability of ETHx
- pnpm add viem
| Variable | Scope | Description |
|---|---|---|
| NEXT_PUBLIC_ETHX_ADDRESS | Client | ETHx on Ethereum mainnet: 0xA35b1B31Ce002FBF2058D22F30f95D405200A15b. |
| NEXT_PUBLIC_STADER_STAKE_POOL_MANAGER | Client | StaderStakePoolsManager (proxy) on Ethereum mainnet: 0xcf5EA1b38380f6aF39068375516Daf40Ed70D299. Public entry point for ETH→ETHx and unstake requests. |
| NEXT_PUBLIC_STADER_USER_WITHDRAW_MANAGER | Client | UserWithdrawalManager on Ethereum mainnet (see docs.staderlabs.com → smart contracts). Manages unstake requests and finalization. |
Integrate Stader ETHx. Stake ETH: `StaderStakePoolsManager.deposit{value: ethAmount}(address receiver)` mints ETHx at the current `getExchangeRate()` (wei ETH per ETHx, monotonically increasing — non-rebasing). Read APR off-chain from `https://www.staderlabs.com/eth/api/...` or compute via `(ER_now / ER_24h_ago - 1) * 365`. Unstake: `UserWithdrawalManager.requestWithdraw(uint256 ethxAmount, address receiver)` mints a non-transferable WithdrawRequest; once finalized (oracle reports validator exits), call `claim(uint256 requestId)`. For MaticX/BNBx, each chain has its own `ChildPool` / `BnbX` contract with the same deposit/request/claim pattern but different addresses and different exit queues. The Permissionless Pool lets node operators bond 4 ETH + SD instead of 32 ETH and run a validator on behalf of stakers.
- ⚑ETHx is NON-rebasing — DO NOT assume 1 ETHx == 1 ETH; convert via `getExchangeRate()` for display and accounting.
- ⚑Unstake finalization depends on Ethereum validator exit queue + Stader oracle reports; total time-to-cash can exceed 7-14 days during congestion.
- ⚑Permissionless Pool node operators put up 4 ETH + SD as bond — operator slashing is socialized into the ETHx exchange rate via the next oracle report (peg risk during mass-slashing events).
- ⚑MaticX uses Polygon PoS validator unbonding (~3-4 days); BNBx uses BNB Chain validator unbonding (~7 days); HBARx uses Hedera-specific exit timing — DO NOT use the Ethereum unbond UX for these tokens.
- ⚑ETHx/ETH peg deviation on Curve / Balancer during stress is expected; use the on-chain `getExchangeRate()` as an oracle source, not DEX spot.
- ⚑SD token rewards and incentive emissions are off-chain; eligibility for boosts depends on whether ETHx is held in an approved DeFi position (Pendle PT, Aave, etc.).
- ⚑Stader has been audited but the Permissionless Pool architecture is more complex than custodial pools (Lido, Rocket Pool centralized) — review the most recent audit before listing it as 'safe' to users.