Before diving straight into integrating, think about the user experience and all the key workflows you should consider as part of your integration. Here is a non-exhaustive list to help plan your user experience.
Feature in 'Earn' dashboard or integrate into existing workflows.
Emphasize ETH staking as a new product for heightened awareness.
Clearly display the reward rate for informed user decision-making. It is not static.
Set a practical minimum (e.g. 0.1 or 0.05 ETH) to avoid the staking tx costing more than the stake itself.
Alert users if the cost of the transaction is high relative to the amount being staked
Clarify if users must read and accept your Terms and Conditions.
Consider displaying estimated rewards based on the current reward rate, as some integrators do.
Provide users with an estimate of when their stake begins earning rewards.
Include a link to the 'staking request' transaction on Etherscan for transparency.
Display the user's staked ETH amount and current value
Consider showing historical reward data e.g. yesterday, last week, last month
Simplify 'stake more' or 'unstake' options for user convenience.
Enable users to request full or partial unstake.
Highlight that unstaking may take several days; the ETH is not immediately available.
For each exit request, show users an estimate
If unstaking too early, caution about potential network fee implications.
Include a link to the 'unstaking request' transaction on Etherscan for transparency.
Display 'unstake request' status and estimated time.
Alert the user to the fact that they have ETH to be claimed.
Include a link to the 'claim ETH' transaction on Etherscan for transparency.
Think about how you handle the integration contract being paused?
Stakers will not be able to stake (transactions will revert), so it's better to think about how to gracefully handle these situations before they happen.