Bond Transaction

Bond transaction is used to bond stake to a validator. If the validator does not exist, it will be created. Once a bond transaction committed, the validator cannot participate in the sortition algorithm for 1 hour. This is called the “bond interval” and is defined in the consensus parameter. Validators within the committee cannot increase their stake. Therefore, bond transactions will be processed only when the validators are not in the committee.

The Payload Type for Bond is 2.

Payload Structure

The bond transaction has a payload that consists of the following fields:

FieldSize
Sender address21 bytes
Receiver address21 bytes
Public key (optional)96 bytes
AmountVariant
Delegate owner21 bytes (optional)
Delegate shareVariant (optional)
Delegate expiry4 bytes (optional)
  • Sender address is the address of the sender account.
  • Receiver address is the address of the receiver validator.
  • Public key is the validator’s public key. If the validator does not exist yet, the public key should be set, otherwise it should be left empty.
  • Amount is the amount of coins that should be staked or bonded.
  • Delegate owner, Delegate share, and Delegate expiry are legacy fields. They belong to an older single-owner delegation scheme that has been replaced by pooled staking (see below); the fields are retained on the wire only for backward compatibility and are not used by pools.

Pools and operators

In Anemos a validator is a pool run by an operator, and a Bond is how an operator opens and funds that pool. A pool-registration Bond records the sender as the pool’s operator, sets the pool’s commission (the slice of block rewards the operator keeps, from 0% up to a 20% cap), and counts as the operator’s self-bond — the operator’s own stake in the pool, which must meet a minimum (2,000 ANM) set above the per-delegator minimum so the operator shares its delegators’ downside.

The operator uses the same Bond transaction to top up its self-bond or change its commission later. Commission decreases take effect immediately; increases take effect only after a notice period (about 21 days), so delegators cannot be surprised by a higher fee.

A pool-registration Bond also carries four optional participation controls that let the operator shape who may delegate and how much: a private flag (when set, only the operator may add principal), a per-position minimum delegation (at least the network floor of 500 ANM, and enforced on every deposit including top-ups), a per-position maximum delegation, and a cap on the number of delegators (default and protocol hard ceiling 32). Re-bonding updates these settings. See running a pool for what they are for.

Holders who want to stake into a pool do not use Bond — they use the separate Delegate transaction (type 9). See the staking guides for the full picture: running a pool as an operator and delegating as a holder.

Last updated on