10 / 691TX

Transaction

Bitcoin transaction

A record that spends specific previous outputs and creates new conditions for later spending.

An ordinary Bitcoin transaction moves value between UTXOs through inputs and outputs. It is not an instruction to a bank to update balances: nodes check references, amounts, scripts and time conditions against a particular chain state.

An input names a txid and output index, not merely a sender address. The referenced output must exist and be spendable. Two inputs cannot spend the same output within one transaction; conflicts with other transactions are assessed against the history being validated. [Bitcoin Core v29.0: transaction validation]

A 100,000-sat UTXO can create 60,000 sat for the recipient and 39,000 sat change, leaving a 1,000-sat fee. The input is spent entirely. Change has no special protocol field and the fee is not a separate output. Omitting change can accidentally increase the fee. [Bitcoin Developer Reference: Transactions]

ScriptSig and, where applicable, witness provide data satisfying the old output’s conditions. The signed message depends on input type and SIGHASH; signatures do not all commit to every field identically. A valid signature cannot bypass missing inputs, excessive outputs or unfulfilled time locks. [Bitcoin Developer Reference: Transactions]

txid is double SHA-256 of serialization without witness; wtxid includes witness and equals txid for a transaction without it. Fee rate commonly uses vsize, weight divided by four rounded up. Equal payment amounts therefore need not have equal inclusion costs. [BIP 141: transaction identifiers and weight]

Signing or mempool acceptance is not confirmation. Node relay policy differs from consensus validity; a transaction can wait, be replaced by a conflict, or be confirmed and later disconnected by reorganization. Verify actual outputs and confirmations on the correct network, not merely an image showing a txid. [Bitcoin Core v29.0: block validation]

Example · TX

Inputs minus outputs equals the fee

If a transaction consumes inputs worth 250,000 sats and creates outputs worth 248,200 sats, the remaining 1,800 sats is the fee. The fee is implicit; it is not sent to a special fee address.

For the clearest picture, read this entry together with UTXO, Private Key, Mempool, Transaction fees, SegWit. The reverse links also lead from Bitcoin Whitepaper, Timechain, Full Node, UTXO.

01Can a confirmed Bitcoin transaction be reversed?

There is no chargeback command. A chain reorganization can remove a recent confirmation, but the cost and improbability generally rise as more proof of work accumulates above the transaction.

02Why does a wallet create a change output?

Inputs spend UTXOs in full. When selected inputs exceed the payment plus fee, the wallet normally creates a new output returning the remainder to a script it controls.

DOC · 001Bitcoin Core v29.0: transaction validationPrimaryDOC · 002Bitcoin Developer Reference: TransactionsPrimaryDOC · 003BIP 141: transaction identifiers and weightPrimaryDOC · 004Bitcoin Core v29.0: block validationPrimary
Reviewed 1 August 2026Source-first · No investment advice