Batch Transfer Transaction

Batch Transfer Transaction

Batch transfer transaction is used to transfer coins to multiple recipients in a single transaction. This is more efficient than creating multiple individual transfer transactions. It follows a one-to-many pattern, allowing a single sender to transfer coins to multiple recipients in one transaction. A user-submitted batch transfer is signed by the sender and debits the sender’s balance for the total amount, exactly like a regular transfer but to many recipients at once (it must have between 2 and 8 recipients).

If any receiver account does not exist, it will be created automatically.

The Payload Type for Batch Transfer is 6.

ℹ️
A batch transfer always debits a real, balance-checked sender and can never mint new coins. The block-subsidy mint is a separate, dedicated Coinbase transaction (type 8) — the protocol’s only minting path. Isolating the mint into its own type means the user-facing batch transfer can never be a mint.

Payload Structure

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

FieldSize
Sender address21 bytes
Number of RecipientsVariant
Recipients Address 121 bytes
Recipients Amount 1Variant
Recipients Address N21 bytes
Recipients Amount NVariant
  • Sender address is the account address that transfers the amounts
  • Number of Recipients specifies how many recipients will receive funds in this transaction (maximum 8 recipients)
  • Recipients Address 1 to N are the account addresses that receive the amounts
  • Recipients Amount 1 to N are the amounts of coins that should be transferred to each corresponding recipient

The payload structure allows for up to 8 recipients, with each recipient having a corresponding address and amount pair.

Last updated on