LogoLogo
  • Overview
    • Introduction
    • Features
    • Consensus PoSa
  • Building on Bahamut
    • Overview
    • Network Endpoints
    • Deploy Smart Contracts
      • Using Hardhat
        • Create a project
        • Compiling the contract
      • Using Remix
        • Writing a Smart Contract
        • Compiling the contract
    • Deploy a Token
    • Deploy an NFT
    • Explorer
    • Bridge
    • About $FTN
  • Become a validator
    • Step 1: Install the Required Files
    • Step 2: Run the Node
    • Step 3: Set Up Your Wallet
    • Step 4: Generate Validator Keys
    • Step 5: Import Validator Keys and Launch the Validator Client
    • Step 6: Submit Deposit Data
    • Step 7: Set Withdrawal Credentials (BLS to Execution)
  • Validator Checklist
  • Staking Withdrawals
  • Difference on Bahamut Staking vs. Lolik
  • Disclosure
    • Disclaimers
    • Risk Statement
Powered by GitBook
On this page

Staking Withdrawals

Here’s everything you need to know about the withdrawal process.

Updating Withdrawal Credentials

To enable withdrawals, you’ll need to update your validator account’s credentials from BLS (Type 0, 0x00) to execution (Type 1, 0x01). This change ensures your validator can send funds to an execution layer address.

Your withdrawal credentials are separate from your fee recipient address, which collects transaction fees from proposed blocks.

While they can be the same address, they must be set independently.

How to Update:

  • Use tools like the Staking Deposit CLI to generate the key change message.

  • This process requires your seed phrase and is best performed offline on an air-gapped machine.

After broadcasting the update, your validator will permanently switch to execution withdrawal credentials and become eligible for payouts.

BLS to Execution Change (BTEC) Queue

When updating credentials, your message joins the BLS to Execution Change (BTEC) queue. Each block processes up to 16 BTEC messages. If there’s a high volume of requests, a queue forms, and your message will be included in subsequent blocks.

Once updated, your validator is permanently enabled for withdrawals, making you eligible for reward payouts during the next balance sweep.

Excess Balance Withdrawals (Partial Withdrawals)

Validators earn rewards up to a maximum effective balance of 8,192 FTN. Any balance above this limit is automatically withdrawn to your Bahamut address.

Excess rewards are automatically withdrawn when your balance exceeds 8,192 FTN, while the remaining 8,192 FTN stays locked and staked. You cannot manually request specific withdrawal amounts.

Automatic withdrawals ensure your excess rewards are sent to your withdrawal address without impacting your validator’s status.

Full Withdrawals: Exiting Staking

A full withdrawal occurs when you stop staking entirely and exit your validator. This process involves two key steps:

  1. Update Withdrawal Credentials:

Ensure your withdrawal credentials are set to an execution address (Type 1, 0x01).

  1. Voluntary Exit:

Signal your intent to exit staking by signing and broadcasting a voluntary exit message using your validator keys. This unlocks your remaining balance, which will then be fully withdrawn to your designated withdrawal address.

Command to Exit:

./bahamut validator exit --public-keys=... --network=sahara

Important Notes:

Once a validator has fully exited and withdrawn its balance, any additional deposits made to the validator will automatically be sent to the withdrawal address during the next balance sweep.

If you didn’t set a withdrawal address when creating your deposit data, you can still set it later. However, this requires an additional step:

  1. Create new deposit data that includes the withdrawal address.

  2. Make a new deposit of at least 256 FTN to the deposit contract.

After this process, the withdrawal address will be updated, and the 256 FTN will be returned to your withdrawal address, minus a small amount to cover gas fees.

To re-stake, a new validator must be created and activated.

PreviousValidator ChecklistNextDifference on Bahamut Staking vs. Lolik

Last updated 1 month ago