edgecase
Author: StJohn Piano
This page is subject to change at any time. It is not signed by its author or by Edgecase Datafeed.
380 words - 60 lines - 2 pages




In order to create Bitcoin transactions, you will need access to certain important services or tools.


Please see the following page:
Other services
to see if services are listed there that provide the capabilities listed below.


Necessary services / tools:
- The ability to send bitcoin to an address. You can do this by a) using a Bitcoin service that stores bitcoin and creates transactions for you, b) creating a transaction on an online computer, or c) creating a transaction on an offline computer. Option (c) is most secure, option (a) is least secure.
- The ability to look up which unspent outputs are stored in a Bitcoin address.
- The ability to look up these details about an unspent output: The txid of the original transaction that sent the unspent output to its current address, the index of the unspent output in the list of outputs in the original transaction, and the value of the unspent output. The txid is a 64-hex-character string, the index is an integer, and the value can be either in satoshi (an integer) or in bitcoin (a decimal value with up to 8 decimal places). These three pieces of information, together with the private key of an address (which is where this output is now stored in the blockchain), allow you to spend this bitcoin output in a new transaction.
- The ability to check the status of a transaction (i.e. has it been mined, and if so how many blocks deep is it?)
- The ability to look up current Bitcoin network transaction fee rates.


If you don't have the ability to look up which unspent outputs are stored in a Bitcoin address, here are two workarounds:
- Workaround 1: The ability to look up the transactions that have transferred bitcoin to an address, the ability to search these transaction for the relevant output that was sent to the address, and the ability to check the status (unspent or spent) of an output.
- Workaround 2: Every time a Bitcoin transaction transfers bitcoin to one of your addresses, make a record of its txid. Have the ability to search a transaction for the relevant output that was sent to your address. Make an additional note ("spent") when you spend this output.