Skip to content
Protocol contracts not yet configured for this build
Enter app

Participant guides

Stake PLOUTO

Staking creates a position: an amount, a fixed lock, and the Gravity that follows from them.

Prerequisites

  • A wallet connected to Robinhood Chain — see connect a wallet.
  • At least 1 PLOUTO. Smaller amounts revert with AmountTooSmall.
  • Enough ETH for two transactions (approval and stake).

Steps

1. Enter an amount

Type it, or use Max to fill your full balance. The form validates as you type:

  • Above your balance → Amount exceeds your PLOUTO balance, and the button disables.
  • Below 1 PLOUTO → Minimum stake is 1 PLOUTO.

2. Choose a lock

Three terms, three weights:

LockGravity multiplier
7 days
30 days1.5×
90 days2.5×

The preview updates immediately with the Gravity this position would carry, your projected share of total Gravity, and the exact unlock timestamp.

3. Approve

The first stake requires an ERC-20 approval. The button reads Approve PLOUTO. Plouto requests an allowance for exactly the amount being staked, not an unlimited one.

Sign it, wait for confirmation, and the button becomes Stake.

4. Stake

Sign the second transaction. It calls:

solidity
function stake(uint256 amount, uint64 lockDuration) external returns (uint256 positionId)

The contract pulls your tokens, measures the balance delta to confirm the exact amount arrived, computes weight, and opens the position.

5. Watch the receipt

The interface reports each state explicitly:

StateMeaning
Awaiting signatureWaiting for you in the wallet.
SubmittedBroadcast; hash available.
ConfirmingIn the mempool or awaiting inclusion.
ConfirmedMined successfully. Links to Blockscout.
FailedReverted or rejected, with the reason.

Your position list updates automatically on confirmation. No page refresh is needed.

What you now hold

A position with a unique ID, visible under Your positions, showing amount, Gravity, pending ETH, open date and unlock date.

Nothing is transferable — positions are tied to the address that opened them and cannot be sold or moved.

Common reverts

ErrorCause
AmountTooSmall(amount)Below the 1 PLOUTO minimum.
InvalidLock(duration)Not exactly 7, 30 or 90 days.
FeeOnTransferToken(expected, received)The token taxed the transfer. Should never occur with a standard Pons token.
EnforcedPause()Staking is paused. See pausing.
NotInitialized()PLOUTO is not registered yet.

Next

Claim ETH · Withdraw a matured position