How to Start Staking With the Developer Wallet
This section explains how to become a nominator by bonding your AZERO and staking them to safeguard the Aleph Zero blockchain.
Before we start, you need to hold some AZERO, which you can currently acquire through one of the following exchanges:
Besides the official web wallet on azero.dev, multiple wallets offer the functionality of staking on Aleph Zero, among them Nova Wallet and Subwallet. However, it is not recommended to use https://polkadot.js.org/apps/ because some UI elements are not compatible with Aleph Zero. Important to note is that all the different wallets are merely different user interfaces to the same on-chain staking functionality. Thus, no matter the wallet, you will get the same returns (APY) if you make the same staking choices. What differs quite a bit between various wallets is the user interface. Below we provide a detailed guide on how to use the official azero.dev wallet.
Direct nomination (also known as solo nomination or standalone nomination) is a staking mode in which the user acts as a single nominator. The other mode - nomination pools - is explained in the further section of this page.
To become a direct nominator you need a significant minimum stake: 2000 AZERO at the time of writing this article, although keep in mind that this requirement will most likely increase in the future. When acting as a direct nominator, you have full control of who you nominate and are free to change your nominees without going through the unbonding period.
Before we dive into the details on how to become a direct nominator, there is one important concept we need to explain: stash and controller accounts. Active participation in staking requires taking various actions, which are performed by sending specific transactions to the Aleph Zero Blockchain. Some of these actions will be performed very rarely (like bonding or unbonding your coins) while others could be used much more frequently (for example, changing a validator you nominate). The controller account is meant to perform all these frequent actions - it can be seen as a proxy acting on the behalf of your main staking account (stash account) with a limited set of responsibilities.
Stash account is your main staking account, with full control over all staking-related decisions. This is where the staked coins are bonded and kept. Only the stash account can be used to perform actions like: bonding additional coins, withdrawing unbonded coins, designating or changing the controller. Because this account is used rather infrequently and often holds significant funds, some users prefer to use a cold wallet (an offline wallet, which is not constantly connected to the Internet) as their stash account.
Controller account is an account designated by the stash account to be responsible for actions that might be needed more frequently. Controller account can only be used to:
- choose or change the validator you nominate,
- change the reward destination
- unbond a part of your stake
Despite the name, the controller account has no control over the funds bonded on the stash account - it cannot withdraw or transfer them. That way you can have your controller account as a hot wallet used for frequent interaction with the chain without risking the safety of your stashed coins. If your controller account somehow becomes compromised, the attacker won't be able to steal your funds kept on the stash account.
It is perfectly fine to use the same account as both stash and controller. Using two different accounts provides an additional level of security for users who prefer to keep their staked coins in a cold wallet.
To start staking as a direct nominator:
- 1.Go to the Staking tab of the mainnet and the Accounts tab – make sure the Stashed mode is enabled in the top left corner. On the top right, you can see 3 buttons with a plus sign: Nominator, Validator, and Stash.
- 2.To stake your coins, click the Nominator button. This will initiate a pop-up window, where you can choose your Stash and Controller accounts, adjust the number of coins you wish to bond, and choose your reward destination (see below).
- 3.Once you submit your choices, the next screen allows you to choose the Validator you wish to nominate.
- 4.And finally, the last screen of the pop-up will ask you to authorize the transaction with your password. Voila, you have just staked your first coins! Please note that your new nomination will be visible in the Accounts tab as a "Waiting nomination" until the start of the next era when it changes to "Active nomination".
The following options are available as destinations for your staking rewards:
- Stash account (increase the amount at stake) - the rewards are sent to your stash account and automatically included in your bonded stake, meaning they will increase your future rewards. This option is sometimes referred to as "autocompounding"
- Stash account (do not increase the amount at stake) - the rewards are sent to your stash account, but are not automatically bonded. They are available as transferable coins right away and do not contribute to future rewards, unless manually bonded.
- Controller account - the rewards are sent to your controller account as transferable coins.
- Specified payment account - the rewards are sent as transferable coins to some other account of your choice.
Nomination pool is a staking mode in which multiple users combine their stakes to act as a single nominator. Thanks to that, participation in a nomination pool requires a much smaller minimal stake than nominating directly. Currently, to join a nomination pool, you only need a stake of 10 AZERO.
A nomination pool is created by a user called the pool's owner. He or she needs to bond the initial stake of 2000 AZERO (as though it was a direct nomination) and choose a validator to nominate. After that, other users can join that pool and contribute with their stake to the common stake of the pool. Such a pool acts as one big direct nominator, with the pool owner being responsible for making decisions about who to nominate. Usually, most pools are owned by users who also run validator nodes, so there's a direct correspondence between pools and validators and the validator nominated by a particular pool never changes.
An important thing to keep in mind is that, when using a nomination pool, your staked coins are transferred to the pool's stash account. This is different from a direct nomination scenario when bonded coins stay on your own stash account. As a consequence of that, switching to a different nomination pool cannot be done instantly - you need to unbond your coins from one pool (and wait through 14 days unbonding period) and then join the other pool.
To join a nomination pool, please go to Pools. Pick any pool you like from the list, and click Join. You will see a prompt like this:
Joining a nomination pool on testnet.
- Pick the account you wish to use and how many coins you would like to stake.
- Click “Join” and proceed with signing the transaction.
Note that you can join only one pool from a single account.
Please remember to use the Join button to join a nomination pool. Sending coins directly to the pool will not result in joining the pool - you would simply make a regular transfer and not participate in staking. Funds sent to pools as regular transfers cannot be recovered.
Staking rewards for pool participants are not automatically sent to their accounts. Instead, they are paid out to the pool's account and need to be claimed by participants manually. To claim your rewards from a nomination pool, please go to the Accounts tab and choose Pooled view using the button in the top left corner. You will see the list of all your accounts participating in nomination pools. Choose an account for which you would like to claim rewards, press on the three dots button at the end of that line and choose Withdraw claimable. After signing the transaction, the rewards will be transferred to your account.
Alternatively, if you would like to claim your rewards and have them immediately included in your stake in that pool, please select Bond more funds from the three dots menu. In the popup menu select Pool rewards as the type of funds to bond. After signing the transaction all your currently claimable rewards will become bonded and will increase your stake in the pool.
It is important to remember that both staking methods are equally safe, and you are never losing custody of your coins, only delegating them to selected validators (but they cannot just take them). However, to secure optimal rewards, it is crucial that you pick a validator, or a pool operator, that you trust and that offers high performance.
The table below summarizes the most important differences between staking using direct nomination and nomination pools:
Staking method | Direct nomination | Nomination pool |
---|---|---|
Minimal stake | 2000 AZERO | 10 AZERO |
Staked coins | Stay on your stash account as bonded | Transferred to pool's stash account |
Changing the nominee | Instant, no unbonding needed | Requires unbonding coins from one pool (14 days) and bonding to the other |
Rewards | Sent automatically to a chosen account | Need to be claimed manually |
Auto-compounding | Possible to automatically increase the stake with daily rewards | Currently not possible. Can be done by manually claiming rewards every day and bonding them to the pool |