Overview
Staking on the Polygon network (POL) involves locking up tokens to support the network's security and operations. In return, stakers earn rewards.
The Chorus One SDK simplifies this process, providing developers with the tools needed to build, sign, and broadcast staking transactions.
This guide will walk you through the fundamentals of staking on Polygon using the Chorus One SDK.
Setting Up the Staker
To get started with staking on the Polygon network using the Chorus One SDK, you will first need to initialize the SDK.
First, create an instance of the PolygonStaker with the following configuration:
import { PolygonStaker } from '@chorus-one/polygon'
const staker = new PolygonStaker({
network: 'mainnet',
rpcUrl: 'https://eth-mainnet.g.alchemy.com/v2/YOUR_API_KEY'
})Configuration Parameters:
network: The network to use (
'mainnet'for Ethereum L1 or'testnet'for Sepolia L1)rpcUrl: (Optional) The URL of the Ethereum network RPC endpoint
Initializing the Staker
After configuring the PolygonStaker, you can initialize it to prepare for staking operations.
This can be done via the following input:
Building Transactions
Once the staker is set up, you can start building transactions for staking operations.
The PolygonStaker provides methods to build transactions for staking, unstaking, withdrawing, claiming rewards, and compounding rewards.
You can learn more about these methods in the Methods section.
Example of building a staking transaction:
Token Approval Required
Before staking, you must approve the StakeManager contract to spend your POL tokens. Use buildApproveTx() to create an approval transaction.
Getting the Validator Address provided by Chorus One
The @chorus-one/polygon module includes Chorus One validator addresses for the Polygon network.
You can use these addresses when building staking transactions.
Signing the Transaction
Once the transaction is built, you can sign that transaction using your own signing solution e.g.:
Additionally, you can use the Chorus One SDK to sign transactions using Fireblocks, mnemonic or other methods.
For detailed information on setting up and configuring these options, please refer to the What is a Signer? section.
By integrating Fireblocks, you can leverage its robust security features to sign transactions on the Polygon network.
To set up Fireblocks, you will need to provide the necessary API key, secret key, and vault ID:
For more information please refer to the Signing with Fireblocks
Broadcasting the Transaction
After signing the transaction, you will need to broadcast it to the network. You can do this using the broadcast method:
And now you can track the transaction status:
Next Steps
In this section you learned how to set up the Chorus One SDK for the Polygon network, which included how to build staking transactions, sign, broadcast, and track them.
To learn more about the available methods for
PolygonStaker, continue to the Methods section.
Further Reading
Last updated
Was this helpful?