dKargo Docs
dKargo.ioWhitepaper
Docs ENG
Docs ENG
  • Welcome to dKargo
  • Run dKargo Node
    • Chain RPC
    • Installation Guide
    • Types of Chain Node
    • Full Node
    • Archive Full Node
    • Validator Node
  • Wallet Setup
    • Connectiong to MetaMask
    • Creating a wallet
    • Importing a Wallet
    • Adding the dKargo Network
  • Validator Operations
    • Validator Staking
    • Staking
    • Unstaking
    • Claim
  • Deploy Contract
    • How to deploy a contract
    • Deploying a Contract Using Remix-IDE
    • Deploying a Contract Using Hardhat
    • Deploying a Contract Using Foundry
  • ERC-20 BRIDGING
    • ERC-20 Bridging
    • Standard Gateway
    • Generic-custom Gateway
    • Custom Gateway
  • DKA Bridging
    • DKA Bridging
    • DKA Deposit
    • DKA Withdraw
  • Faucet
    • Faucet for Testnet Tokens
    • Claiming Testnet Tokens
  • Chain Snapshot
    • Download the Latest Chain Snapshot
  • Contract Address
    • Contract Address List
  • Bug Bounty
    • Bug Bounty Program
Powered by GitBook
On this page
  • STEP 1 - Check Withdrawal Eligibility
  • STEP 2 - Unstake ETH
  1. Validator Operations

Unstaking

PreviousStakingNextClaim

Last updated 1 month ago

Unstaking is the process of retrieving the staked assets used for Validator operation. Once the process is initiated, the funds previously staked in the rollup contract will be transferred back to the Validator Wallet.

To proceed, certain conditions must be met, and the unstaking script must be executed.

Unstaking requires manually running the provided script from the Git Repository.

  • ​

STEP 1 - Check Withdrawal Eligibility

To withdraw staked funds, the current staked RBlock must be finalized.

  • The staked assets must remain locked for 6.4 days from the last staking event.

  • Validator operation must be stopped until the withdrawal period is reached.

STEP 2 - Unstake ETH

  • Once the required period has elapsed, the unstake function can be called to retrieve the staked tokens.

  • Unstaked ETH is not immediately transferred to the Validator Wallet.

  • Instead, it remains held within the rollup contract and is managed under the withdrawableFunds variable.

const res = await rollup.returnOldDeposit(stakerWalletAddress);

const receipt = await res.wait();

console.log(receipt.transactionHash)
https://github.com/dKargo/dkargo-validator-utils