Offer staking services to your customers

Liminal provides staking services primarily to organisations in Liminal Vaults. As a self-custody organisation, you can provide staking services to your customers through a partnership with Figment, a renowned staking provider. The following chains are available for staking:

  • Ethereum
  • Solana
  • Cardano
  • Polygon
  • Cosmos

You can set up staking locks/unlocks and reward calculation within your system for your customers, and then monitor the cumulative staked amount in the Liminal Vaults platform.

Offer staking on your exchange app

Take the following steps to offer staking services to your customers on your exchange app.

  1. Allow customers to choose the amount they wish to stake on your exchange app.
  2. Display the potential rewards and terms associated with staking.
  3. Once the customer confirms, lock the specified amount in your exchange's staking pool.
  4. Club all the amount staked by all customers periodically (e.g., every 24 hours).
  5. Stake the aggregated amount on behalf of your customers in Liminal Vaults.
  6. Calculate the difference between the total amount staked by customers on the exchange app and the actual amount staked on Liminal, every 24 hours.
  7. If the customer-staked amount is greater than the amount staked on Liminal, stake the differential on Liminal. If the customer-staked amount is less than the amount staked on Liminal, unstake the differential from Liminal and return it to your exchange's liquidity pool.
  8. Set rewards rate for your customers keeping a buffer amount. For example, if on chain rewards are 23%, you can offer your customer 20% and keep 3% as your fee for providing staking services and slashing risks.
  9. Calculate each customer's proportionate share of the rewards based on their staked amount.
  10. Distribute the rewards to customer accounts. Notify customers of their earned rewards, either through email, app notifications, or other preferred communication methods.

Regularly compare between the rewards you have earned as an exchange with the rewards you are distributing to the customers, to meet your business requirements.


Best practices

Consider the following best practices to incorporate into your services.

  • Setup transition times - Set up a time when the assets move from activating to earning stage. For example, 00:00 every day. So any tokens that have completed activation period before the next cycle, will start earning rewards from 00:00. Similarly, set up time for unstaking.
  • Buffer unbonding period - Set up a buffer period between when a customer requests to unstake and when the assets are actually unstaked. This can help in managing the unbonding period and ensuring there's enough liquidity. Typically, if you are rebalancing every 24 hrs, the unbonding period for your customers can be +1 day of the actual unbonding period.
  • Buffer activation period - Set up a buffer period for activation. For assets that start earning rewards immediately, your customers can be eligible for rewards once the next transition cycle has passed. For some chains like Solana, where activation period is 2 days, it can be 2+ 1 day for your customers.
  • Rewards buffer: Maintain a buffer of the rewards that you distribute to your customers vs the rewards earned by you on chain. This will help against events when rewards earned are low due to some chain events or slashing events.
  • Liquidity reserve: Maintain a reserve of liquid assets to handle immediate withdrawal requests. This can be useful if there's a sudden surge in unstaking requests and the assets in the unbonding period aren't immediately available.
  • Staking agreement - Inform your customers about your staking terms and conditions, unbonding period, and any penalties or fees.
  • Limit unstaking - Implement a daily or weekly limit on the amount a customer can unstake. This can prevent massive simultaneous withdrawals that could strain your liquidity.

Glossary

  • Unbonding period - The time duration it takes for staked assets to become liquid after they are unstaked.
  • Activation period - The time it takes for staked assets to become active and start earning rewards after being deposited. During this time, the assets are typically locked and unavailable for withdrawal. Chains like Solana, have an activation period.
  • Staking rewards rate - The rate at which rewards are distributed for staked assets. You can define a rewards rate for your customers.
  • Slashing - The penalty imposed on validators or stakers who act maliciously or fail to perform their duties correctly within a blockchain network. It typically involves the loss of a portion of the staked assets.
  • Minimum staking amount - The least amount of assets that can be staked at a time. You can define a minimum value of the assets that your customers can stake.
  • Staking fees - The fees incurred during staking or unstaking operations. You can retain a small portion of your customers' total staking rewards as your service fee.