Cancel Unbonding

Cancel Unbonding Guide

This guide explains how to cancel the unbonding delegation on qubetics chain using the qubeticsd CLI.


Prerequisites

Ensure you have:

  • A working Qubetics chain is running.

  • The CLI (qubetcisd ) is installed and configured.

  • Your keyring is already set up with the validator and delegator keys.


Step 1: Check Pending Unbonding Delegations

To see your current unbonding delegations:

qubetcisd q staking unbonding-delegation <delegator-address> <validator-address> --node <rpc-endpoint>

Example:

qubetcisd q staking unbonding-delegation qubetics1abcd... cqubeticsvaloper1abcd... --node https://tendermint.qubetics.com:443

You’ll see something like:

{
  "unbonding_responses": [
    {
      "delegator_address": "qubetics14adqfq7hdrqxpy5qtnnmshvpzpxvmr3x0pqgn2",
      "validator_address": "qubeticsvaloper1xyz...",
      "entries": [
        {
          "creation_height": "789195",
          "completion_time": "2025-08-25T16:05:59.861001704Z",
          "initial_balance": "1000000000000000000000",
          "balance": "1000000000000000000000",
          "unbonding_id": "378",
          "unbonding_on_hold_ref_count": "0"
        }
      ]
    }
  ]
}

Field meanings:

<creation_height>: The block height when the unbonding delegation was initiated. Here: it started at block 789195.

<completion_time>: The timestamp when the unbonding period finishes (i.e., when the tokens become liquid and transferable). Here: 2025-08-25T16:05:59Z is the unlock time.

<initial_balance>: The original number of tokens that were unbonded at the time of starting. Here: 1000000000000000000000 (tics = 18 decimals → 1000 TICS).

<balance>: The remaining balance that is still unbonding. If you redelegate or cancel part of it, this value decreases. Here, still the full amount (1000 TICS) is waiting. <unbonding_id>: A unique identifier for this unbonding entry. Useful if there are multiple unbondings per delegator. Here: entry ID is 378.

<unbonding_on_hold_ref_count>: Internal counter used when unbonding is paused/put on hold (e.g., due to slashing events or other protocol logic).

0 → means not on hold; tokens are progressing toward release normally.

Greater than 0 → means unbonding is currently paused.


Step 2: Cancel the Unbonding

To cancel the unbonding delegation and redelegate it back:

qubetcisd tx staking cancel-unbond <validator-address> <amount> <creation_height> --from <delegator-key> --gas auto --gas-prices <fee-amount> --chain-id <chain-id> --node <rpc-endpoint>

Note:

The amount entered on the CLI must include 18 zeros. For example, if the amount is 1 TICS, then on the CLI it should be entered as 1000000000000000000 TICS.

Example:

qubetcisd tx staking cancel-unbond qubeticsvaloper1xyz... 1000000tics 789195 --from mywallet --gas auto --gas-prices 100000000000tics --chain-id qubetics_9030-1 --node https://tendermint.qubetics.com:443

Note:

The amount entered on the CLI must include 18 zeros. For example, if the amount is 1 TICS, then on the CLI it should be entered as 1000000000000000000 TICS.

Where:

  • <validator-address> → The validator where you delegated.

  • <amount> → Amount you want to cancel unbonding.

  • <creation_height> → The block height when the unbonding delegation was initiated. Here: it started at block 789195.

  • --from → Your delegator wallet name.

  • --gas-prices → Transaction fees.

  • --chain-id → Your chain ID.


Step 3: Verify the Transaction

After submission, confirm it on-chain:

qubetcisd q tx <tx-hash> --node <rpc-endpoint>

Or check your updated delegation:

qubeticsd q staking delegation <delegator-address> <validator-address> --node <rpc-endpoint>

⚠️ Common Issues & Fixes

  1. account sequence mismatch

    • Your account has pending transactions. Wait for confirmation or increase the sequence manually.

  2. insufficient funds

    • Make sure you have enough balance to pay fees.

  3. unknown command

    • Ensure your chain supports cancel-unbonding-delegation (introduced in Cosmos SDK v0.46+).


Notes

  • Canceling unbonding must be done before the completion_time shown in the unbonding entry.


References

  • Cosmos SDK Staking Docs: https://docs.cosmos.network/main/modules/staking

Last updated