Skip to content

stkBNB Smart Contracts

stkBNB codebase can be found here.

Contract Name Description Contract Address
StakePool StakePool is the main contract for user interaction. Users interact with this contract for stake / unstake / claim requests. The contract is also responsible for maintaining the exchange rate (c-value) and storing the wallet addresses for cross-chain transfers to the BNB Beacon Chain 0xC228CefDF841dEfDbD5B3a18dFD414cC0dbfa0D8
stkBNB Token Token contract contains the design of stkBNB token. The token is BEP-20 with BEP-2 compatibility 0xc2E9d07F66A89c44062459A47a0D2Dc038E4fb16
Address Store A non-upgradable contract that stores all the critical addresses in the design. The contract prevents circular dependency between the contracts as the contracts depend only on the address store to get the address of any other contract. 0x4a6b3127A1D295878d8790F6ece0776F65FEc121
Undelegation Holder This contract temporarily holds the undelegated amount sent by the bot from the BC chain, which is later redeemed by the StakePool contract in order to satisfy user claims. The contract removes an element of trust on the bot when informing the StakePool contract about the unbonding finished event 0x3C0Fc52c7de41363C14a63EA09Ba4202d15Dc298
Fee Vault All fees charged by the pSTAKE protocol goes to the Fee Vault contract. Funds movement from the contract can be done only by the Admin multisig. The contract will start accruing fees once it is voted in through governance 0x2FC80E731C40ec6590783bb11Eede9dd43fC69bf
Timelock Admin Timelock Admin allows for a cool-off period between finalisation of changes on the protocol and the actual execution. The Timelock Admin contract is currently active for any change in Admin multisig and in case of Emergency Shutdown. 0xc1F861FBE4AA730ba19DFA1b1e75ec030E54B607

On the BC chain, the development consists of a bot that performs staking, unstaking, and reward collection transactions on defined intervals based on inputs from the StakePool contract.