The original paper has this line, which I believe gets at *why* you have to spend outputs entirely. > It should be noted that fan-out, where a transaction depends on > several transactions, and those transactions depend on many more, is > not a problem here. There is never the need to extract a complete > standalone copy of a transaction's history If you didn't have to spend an output entirely, you would need to check every other transaction that also includes that output and make sure the sum wasn't more than it contained. I'm not 100% certain why inputs and outputs were used rather than keeping balances directly. Ethereum and Ripple keep track of balances directly in the ledger. I suspect there are implementation pros and cons. The following answers list advantages to inputs/outputs. I'd be curious to hear an Ethereum dev's counterarguments to these. http://bitcoin.stackexchange.com/questions/39177/why-does-bitcoin-use-the-input-output-system?rq=1 http://bitcoin.stackexchange.com/questions/29780/why-does-bitcoin-store-all-transaction-inputs-and-outputs-instead-of-just-an-a