Claim withdrawal
Claim withdrawal

Lido · Acts onchain

Claims a finalized Lido withdrawal request and pays the native ETH to the wallet. The queue only lets a request's owner claim it, so the socket takes the request NFT under the approval the wallet grants in the same confirmation, then claims it with the wallet as recipient: the NFT is burned and the finalized ETH lands in the wallet directly. The request must have been finalized by the Lido oracle first. Reach for it in a scheduled plug that claims once the request is finalized.

Unstake From Lido, Claim It When It Clears, Restake It

plug
database
boolean
11actions
  1. 1·Take

    Declares unstake_amount as a caller-supplied parameter, the quantity of stETH to queue for withdrawal at execution time.

  2. 2·Read stored value

    Reads the stored unstake_request value from this plug's own storage, pulling whatever request identifier a prior run may have saved.

  3. 3·Predicate

    Comparing the stored unstake_request against 0 with an equality operator, control branches on whether no request is currently outstanding.

  4. 4·Request withdrawal

    When no request exists, the unstake_amount of stETH at 0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84 is queued for withdrawal through Lido, yielding a claimable request NFT.

  5. 5·Set stored value

    Writing the resulting request identifier back into plug storage under unstake_request, this persists the open claim for the next run to find.

  6. 6·Else branch

    Opening the else branch, this defines what runs when a request identifier was already stored.

  7. 7·Claim withdrawal

    On that branch, the stored unstake_request is claimed from Lido, and once the request has finalized the socket receives native ETH.

  8. 8·Set stored value

    Resetting the stored unstake_request to 0 clears the marker, so a future run starts a fresh withdrawal.

  9. 9·Get token balance

    Reading the ETH balance held by the socket at 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, this measures the native ETH now on hand.

  10. 10·Stake

    Staking that measured ETH balance with Lido returns stETH at 0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84, restaking the claimed proceeds.

  11. 11·End block

    Closing the innermost open block, this ends the else branch.

Take
Read stored value of in
Request withdrawal of from Lido
Set stored value of in to
Else
Claim withdrawal from Lido
Set stored value of in to
Get balance of held by
Stake for
End block
  • Unstake From Lido, Claim It When It Clears, Restake It

    plug
    database
    boolean