Overview
The Staking precompile provides a Solidity interface to the Cosmos SDK x/staking module. Smart contracts can manage their own delegations and query staking state. createValidator and editValidator must be called directly by the validator operator’s account (an EOA or an EIP-7702 delegated account); calls from a smart contract revert.
Precompile Address: 0x0000000000000000000000000000000000000800
Gas Costs
Transaction Methods
Query Methods
Example
In transaction methods, the delegator address must be the direct caller of the precompile. A contract delegates its own tokens by passing address(this); an EOA calls the precompile directly with its own address. Any other address reverts with msg.sender address ... does not match the requester address .... Queries such as delegation accept any address.
Cosmos module precompiles take amounts in the base denom ctm, the smallest unit of CTM: 1 CTM = 10^18 ctm, the same scale as wei. Do not convert to 6 decimals as on other Cosmos chains; check each precompile’s expected amount format before interacting with it.
For exact signatures, structs, return values, and events, see Precompile ABI Reference.