Introduction
Polymesh is built on Substrate, a framework and a set of modules for creating a blockchain. Substrate provides tools that offer low-level access to everything that happens on a Substrate network and these tools work with Polymesh.
The Polymesh App is such a tool. It is typically used by developers to explore the blockchain and transactions in depth.
Staking on Polymesh
Staking on Polymesh secures the network by aligning incentives with the proper operation of the blockchain. Stakers nominate their stake to Node Operators and both are either rewarded or fined based on the Operator’s performance writing blocks to Polymesh.
About eras and election
An era consists of 24 hours. Rewards and fines are calculated and enacted in every era.
Each day voting takes place for 1 hour. If you nominated before that time, your stake will be included in the era. If you nominated after the voting period, then your stake will be included as of the next day.
Staking actions are disabled during the election period.
Earning block rewards
Block rewards and fines are the carrot and stick vital to Polymesh’s Nominated Proof-of-Stake consensus mechanism, and therefore, proper chain operation. For each block created, the Node Operator who created it is rewarded in POLYX along with their Stakers. Failure to meet the performance standards of the chain, however, could lead to Operators being fined in POLYX.
Rewards and fines are calculated and enacted per era (every 24 hours). If you are staking and actively nominating an operator, staking rewards will be credited to your account automatically. Rewards are distributed daily just after the election.
Please be aware that you will not receive rewards if you have unstaked or if you have never nominated an operator. Only the top 2,048 stakers per operator node will receive rewards.
In order to receive staking rewards you need to:
- Stake POLYX and select one or more node operators - Your stake (and selection of node operators) will take effect in the next era (there is one era every 24 hours)
- The node operator(s) you selected need to be active in the current era (i.e. actively producing blocks).
If your configuration meets these requirements, you will receive staking rewards every day.
How to start staking
Import your account to the Polymesh Mainnet app
You can skip this step if you see your account in the Polymesh Mainnet app.
- Open the Polymesh Mainnet app
- If you don't see your account in the list, then click on "Stash" to add your stash account:
Note: Think of the stash as your cold wallet and the controller as your hot wallet. Funding operations are controlled by the stash, and any other non-funding actions by the controller itself.To ensure optimal fund security using the same stash/controller is strongly discouraged, but not forbidden.
- A pop-up window will appear to set up your stash account, the bonded value, and the payment destination.
Select your Polymesh Mainnet account and enter the value you are about to bond in POLYX.
You can find instructions on the right-hand side of the window.
Note: The screenshot is on testnet where addresses and bonding duration are different from mainnet.
Note: Count the maximum POLYX amount to be bonded as your total balance minus >10 POLYX. You may need the 10 POLYX to edit your stake, or unstake. If you stake your ENTIRE balance, i.e. leaving 0 POLYX in your wallet, you will not be able to perform transactions like editing your stake, or unstaking afterward. - Ensure that all information is correct. Click on "Bond", then "Sign and Submit" on the next window to sign this transaction with your wallet.
Please note: The accounts are stored only in your browser, so clearing the cache will also wipe your accounts. You would then have to recreate them using the seed phrase or a JSON file in the Accounts menu - this will also restore all your previously held balances.
You can enable or disable local browser storage in the Settings menu of the Polymesh App.
Note: To import Ledger accounts please follow this guide.
Set up staking
Bond funds
- Open the Polymesh Mainnet app
- If you see your account in the list, then click on the three dots at the right side of your account then click on Bond more funds:
- A pop-up window will appear to set up the bonded value. Enter the value you are about to bond in POLYX.
You can find instructions on the right-hand side of the window.
Note: Count the maximum POLYX amount to be bonded as your total balance minus >10 POLYX. You may need the 10 POLYX to edit your stake, or unstake. If you stake your ENTIRE balance, i.e. leaving 0 POLYX in your wallet, you will not be able to perform transactions like editing your stake, or unstaking afterward. - Ensure that all information is correct. Click on Bond, then Sign and Submit on the next window to sign this transaction with your wallet.
Nominate targets
- Navigate to the "Targets" tab in the Polymesh app.
- In this tab, you can see the list of the validators with further information about staking as nominators count, total stake, own stake, return percentage, and more:
- Click in the checkbox (1) to select the validator(s) of your choice. You can select up to 16.
- If you click on the diagram icon (2), you can see further information about this specific validator.
- Tip: Click on the "Most profitable" button (3). This will select the most profitable operators of the current era.
- Tip: Use https://f-obrien.github.io/polymesh-staking-app/operator-charts as an additional reference and for further information about the validators and to see staking-related charts.
3. Once you selected all the validators of your choice, click on the "Nominate selected" button (4) to authorize the transaction.
4. A pop-up window will appear to nominate the selected validators. You can change your stash account here if you want to. Ensure that all information is correct, then click on "Nominate".
5. In order to finish setting up staking, click on "Sign and Submit", then sign the transaction with your wallet.
Stop Staking
Stop staking with your entire funds
- Navigate to the "Accounts" tab on the Polymesh App
- Look for your account in the list, Click on the three dots near your account, then click on "Unbond funds":
Note that clicking on the Stop button will not unlock your funds or start the unbonding process. Stop will just remove your nominations. Your tokens will remain bonded until you unbond them.
- You will see a pop-up window where you can enter the amount you would like to unbond. Enter the maximum amount then click on "Unbond":
- Sign the transaction with your wallet
After you stop staking, you'll need to wait 28 days for your funds to be ready to be withdrawn.
Unbond a portion of your stake
- Navigate to the "Accounts" tab on the Polymesh App
- Look for your account in the list, Click on the three dots near your account, then click on "Unbond funds":
- You will see a pop-up window where you can enter the amount you would like to unbond. Enter the amount then click on "Unbond":
- Sign the transaction with your wallet
After you unbonded, you'll need to wait 28 days for your funds to be ready to be withdrawn.
Withdraw unbonded funds
After 28 days when the unbonding period ended, navigate back to the "Accounts" tab on the Polymesh App.
You will see the amount of POLYX you've unbonded under your available balance near a lock icon.
In order to withdraw unbonded funds:
- Click on the three dots on the right side of your account
- Click on Withdraw unbonded funds in the dropdown
- Sign the transaction with your wallet
Learn more
Staking and staking rewards, explained
How is my stake distributed across node operators?
How to stake with Multisig on Polymesh
If you run into any issues, please open a support ticket on the Polymesh Community Portal.
Comments
0 comments
Please sign in to leave a comment.