General architecture
How JPool works

Delegation process

This is what really happens under the hood when you decide to stake with JPool:
  1. 1.
    You create a new staking account and transfer your SOL into it.
  2. 2.
    You delegate the new staking account to the Stake Pool.
  3. 3.
    Your staking account holding your SOL is delegated to JPool's default Validator.
  4. 4.
    Two epochs later, when the stake is fully active, it is deposited into the pool.
  5. 5.
    The Stake Pool's mint issues new JSOL tokens and sends them to you in exchange for your stake.
  6. 6.
    The new SOL is redistributed between the pool's Validators in accordance with the smart strategy.

Withdrawal process

When you decide to withdraw your stake, the following happens:
  1. 1.
    You return your JSOL tokens into the Stake Pool.
  2. 2.
    The pool queues a withdrawal of corresponding SOL amount from Validator stakes.
  3. 3.
    At the end of the epoch, the SOL is unstaked and transferred into your wallet.
Obviously, you get more SOL than you originally delegated, including the compound rewards earned from staking.

Security of your stake

We are using the community Stake Pool program (smart contract) developed by the Solana Foundation.
This means that your stake is as safe as it can be, granted that the community program is not compromised. With the extensive testing and analysis it undergoes by the Solana Foundation and the community, it is reasonable to presume a very high degree of security.