Transaction is a structured operation that requests a change to the state of a blockchain. Depending on the network, it can transfer coins, create or move tokens, call a smart contract, or perform another protocol-defined action.

After creation, a transaction is normally propagated through the network and validated by nodes. In UTXO-based systems it contains inputs and outputs. Account-based systems use a different structure, commonly involving an account address, nonce, value, and execution data.

Transaction lifecycle

  1. The transaction is created and signed.
  2. It is broadcast to the network.
  3. Nodes validate it.
  4. It waits for inclusion in a block.
  5. The transaction receives confirmations after block inclusion.

A transaction fee may be required. Its calculation and distribution depend on the blockchain protocol.