What Is Bitcoin Transaction

This section describes what is Bitcoin Transaction.

A Bitcoin transaction can be defined with two primary elements:

Based on the above definition, we see several important characteristics of Bitcoin transaction:

1. The total amount of inputs must match the total amount of outputs. This is to ensure that Bitcoin is not created or lost in a transaction. But this rule has an exception for the mining reward transaction, in which Bitcoins are created from nowhere to compensate miners for their effort to maintain the Bitcoin system.

2. Each input payment must be an output payment of a previously confirmed transaction. This is to ensure that this portion of the input fund does exist.

3. Each input payment must be an unspent output payment (not used as an input in any other transactions). This is to ensure that this portion of the input fund is still available for spending.

4. Each input payment must have the proof from the owner to spend. This is to ensure that nobody can spend other people's Bitcoin funds.

5. Each output payment must have a valid Bitcoin address. The address of the output payment is usually generated from the Bitcoin wallet of the receiver of the transaction. It contains a checksum to prevent any typos.

A Bitcoin transaction is very similar to a transaction at your bank when you bring a pay check of $1,000.00 from your work place. You want to cash the pay check and ask the bank to write 2 checks, 1 for your landlord of $600.00 for the rent and 1 for you of $390.00 to keep. The remaining $10.00 is giving to the bank as the transaction fee.

So this bank transaction has 1 input payment and 3 output payments. Of course, I have to endorse the input check with my signature to agree to spend the check.

Below is an illustration of a Bitcoin transaction with one input payment and 2 output payments:

Bitcoin Transaction Inputs and Outputs
Bitcoin Transaction Inputs and Outputs

Table of Contents

 About This Book

 Introduction of Bitcoin

 Bitcoin Blockchain

 Bitcoin Wallet

 Bitcoin Core

Bitcoin Transaction

What Is Bitcoin Transaction

 Receive Test Bitcoin from testnet.coinfaucet.eu

 View Transaction on live.blockcypher.com

 Receive Bitcoin in My Test Wallet

 View Bitcoin in My Test Wallet

 Bitcoin-Qt New Incoming Transaction Alert

 "bitcoin-cli sendtoaddress" - Send Bitcoin

 Confirm Outgoing Transaction

 Trace Back Bitcoin Transaction Outputs

 Bitcoin-Qt - Bitcoin Core GUI

 Bitcoin Mining

 Bitcoin Consensus Rules

 Bitcoin Block Data Structure

 Bitcoin Transaction Data Structure

 Bitcoin Blockchain APIs

 Copay - Bitcoin Wallet

 Archived Tutorials

 References

 Full Version in PDF/EPUB