Becoming a Validator (WIP) ๐Ÿšง

Using the Starknet staking contract to stake STRK tokens requires interacting with the stake function. The stake function does the following:

  1. Locks the specified amount of STRK tokens from the validatorโ€™s account into the staking contract.

  2. Records the validator’s details, including reward and operational addresses, in the staking contract.

  3. If pooling is enabled, deploys a new delegation pool contract associated with the validator.

Subsequently, the validatorโ€™s tokens will be locked in the staking contract, and the validator will begin earning rewards based on their stake.

For more information on what happens during the staking process, see Staking Contract Architecture.

Prerequisites
  • Validators are expected to run full nodes in preparation for the following stages of the protocol. You can use any full node implementation you choose:

  • A Starknet-compatible block explorer or CLI tool.

  • Sufficient STRK token balance in your wallet.

  • Pre-approval of the STRK ERC20 contract (Starkscan, Voyager) on Starknet for the transfer of tokens from your address to the staking contract.

Procedure
  1. Using a Starknet block explorer, navigate to the staking contract.

  2. In the contract interface, locate and select the stake function.

  3. Enter the following parameters:

    • In reward_address, enter the address where the rewards will be sent.

    • In operational_address, enter the operational address associated with this stake.

    • In amount, enter the number of STRK tokens you want to stake.

    • In pooling_enabled, enter true if you wish to enable delegation pooling, otherwise enter false.

    • In commission, enter the commission rate for any delegated staking. The rate should be entered as a percentage with precision, where 10000 represents 100%. For example, to set a 5% commission, you would enter 500.

  4. Submit the transaction to execute the staking operation.

Secured hardware wallets:

Ledger hardware wallet is supported through: * Braavos wallet * Argent wallet