docs: add staker user flow #1331
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
NXM Staker User Flow Documentation
Table of Contents
Overview
Staking in NXM Staking Pools allows you to earn rewards by locking up NXM tokens to help underwrite insurance covers. However, staking also carries risks, including NXM burns in the case of a claim payout.
What You Need to Know Before Staking
Choosing a Staking Pool
Before staking, always check the pool’s conditions:
1. Manager Fees
Managers can change the fee at any time (up to the max fee set at pool creation).
Check the current and max fee before depositing:
2. Products Covered by the Pool
Ensure the pool supports products you are comfortable underwriting.
Check listed products:
StakingProducts.getPoolProducts(poolId);
3. Pool Utilization & Risk Exposure
Higher utilization may mean more rewards but also higher burn risk, depending on the risk profile of the products listed.
Check current pool utilization:
StakingPool.getPoolCapacity(poolId);
Key Concepts
How Staking, Underwriting & Rewards Work
When you stake in a pool:
Tranches & What Happens When They Expire
Depositing Mid-Tranche & Withdrawal Timing
Checking When a Tranche Will Expire
You can check when the tranche will expire using:
To get the first active tranche ID (earliest tranche still providing capacity):
How Earnings Flow in a Staking Pool
How to Check Withdrawal Eligibility
Your staked NXM can be locked for two reasons:
The tranche is not expired yet.
Your NXM is locked due to voting.
How NXM Burns Are Calculated
When a valid claim is approved, a portion of the staked NXM in the pool is burned to cover the payout.
How the Burn Amount is Calculated
NXM burns are proportional to the pool’s share of total risk exposure:
However, this only determines the total burned amount for the pool. The actual amount burned for each individual staker depends on their share of the pool’s total stake.
How Much NXM Will Be Burned Per Staker?
Each staker’s NXM burn is proportional to their share of the total pool stake.
Example Scenario:
Individual Staker Burn Calculation:
If you have 20,000 NXM staked in Pool A, and Pool A burns 40,000 NXM, your burn amount is:
How to Check Your Staking Share:
To check your total staked amount ofin the pool:
To check total stake in the pool:
Step-by-Step Process
Pre-Staking Checklist
Verify the Pool's Fee Structure
Review the Products the Pool Underwrites
StakingProducts.getPoolProducts(poolId);
Check Pool Utilization & Burn Risk
StakingPool.getPoolCapacity(poolId);
Understand Withdrawal Rules
How to Deposit
Depositing NXM into a staking pool allows you to earn rewards while underwriting risk. Before depositing, consider:
amount
duration
How to Extend a Stake
To keep your stake active beyond its initial duration and continue earning rewards, you must extend it before expiration.
tokenId
newDuration
How to Withdraw Stake
Once the staking period has ended, you can withdraw your stake. Be aware that if the manager recently voted, there might be a delay.
tokenId
How to Check Withdrawal Eligibility
Your staked NXM can be locked for two reasons:
The tranche is not expired yet.
Use this function to check when the tranche expires:
Your NXM is locked due to voting.
If your manager voted, your withdrawal is delayed until the vote concludes.
Use this function to check if your stake is locked due to voting:
Frequently Asked Questions (FAQ)
What happens if a manager votes near the end of a tranche?
Can I prevent my NXM from being used in governance?
How do I know if my stake is at risk of being burned?
StakingPool.getPoolCapacity(poolId);
What happens if a manager votes near the end of a tranche?
Can I prevent my NXM from being used in governance?
How do I know if my stake is at risk of being burned?
The risk depends on:
Use the following function to monitor utilization:
StakingPool.getPoolCapacity(poolId);
How can I track when my stake will be unlocked?
Use:
StakingPool.getStakeInfo(tokenId);
Best Practices
✅ Monitor Staking Periods: Extend deposits if you want to continue earning.
⚠️ Be Aware of Voting Locks: Your stake may be locked if the manager votes.
✅ Check Manager Fees Regularly: Managers can change fees at any time.