Bitcoin Core’s User Interface
Bitcoin Core has a built in wallet with graphical and command line/API modes. It can also simultaneously support multiple lightweight wallets with similar security and privacy to its built-in wallet.
Warning: you only get the security and privacy benefits in supported lightweight wallets if they make a secure and private connection to your Bitcoin Core every time you use them. This usually requires special configuration.
Bitcoin Core Wallet GUI (Graphical)
Clear overview
See your current balance and recent transactions
Fee slider
Easily choose between low fees and fast confirmation
Coin control
Enhance privacy or save money by choosing your inputs
QR codes
Generate QR codes to receive payment
Unique invoices
Easily track who paid you
Proxy configuration
Use Tor or a proxy for privacy
Network monitoring
Track how much bandwidth you use
Watch-only support
Track bitcoins stored safely offline
Bitcoin Core Wallet RPC/REST (CLI)
GetNewAddress
Get a new address for receiving payment
GetBalance
Instantly see your available Bitcoin balance
SendMany
Send a single payment to multiple addresses
ListUnspent
See what received transactions you can spend
Create/Sign/Send
Create and send raw transactions
Notification
Be notified of new blocks and transactions
Learn more: documentation for the Bitcoin Core APIs
Lightweight Wallets Using Bitcoin Core
Lightweight wallets usually connect to several random full nodes (like Bitcoin Core) to send and receive all of their data. In the process they leak private data and make themselves more vulnerable to attacks.
But it’s also possible to connect certain lightweight wallets solely to your own Bitcoin Core full node, called a trusted peer. If you do this with a secure and private connection every time you use that lightweight wallet, you’ll get most of the security and privacy benefits of a full node as well as help protect decentralization.
bitcoin-cli -testnet getnewaddress "doc test"
mft61jjkmiEJwJ7Zw3r1h344D6aL1xwhma
bitcoin-cli -testnet getbalance
1.99900000
bitcoin-cli -testnet sendmany \
"test1" \
'''
{
"mjSk1Ny9spzU2fouzYgLqGUD8U41iR35QN": 0.1,
"mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe": 0.2
} ''' \
6 \
"Example Transaction"
ec259ab74ddff199e61caa67a26e29b13b5688dc60f509ce0df4d044e8f4d63d
bitcoin-cli -testnet listunspent 6 99999999 '''
[
"mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe"
]
'''
[
{
"txid" : "d54994ece1d11b19785c7248868696250ab195605b469632b7bd68130e880c9a",
"vout" : 1,
"address" : "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe",
"account" : "test label",
"scriptPubKey" : "76a9140dfc8bafc8419853b34d5e072ad37d1a5159f58488ac",
"amount" : 0.00010000,
"confirmations" : 6210,
"spendable" : true
}
]
Create a raw transaction:
bitcoin-cli -testnet createrawtransaction '''
[
{
"txid": "1eb590cd06127f78bf38ab4140c4cdce56ad9eb8886999eb898ddf4d3b28a91d",
"vout" : 0
}
]''' '{ "mgnucj8nYqdrPFh2JfZSB1NmUThUGnmsqe": 0.13 }'
01000000011da9283b4ddf8d89eb996988b89ead56cecdc44041ab38bf787f1206cd90b51e0000000000ffffffff01405dc600000000001976a9140dfc8bafc8419853b34d5e072ad37d1a5159f58488ac00000000
Sign the above raw transaction:
bitcoin-cli -testnet signrawtransaction 01000000011da9283b4ddf8d\
89eb996988b89ead56cecdc44041ab38bf787f1206cd90b51e0000000000ffff\
ffff01405dc600000000001976a9140dfc8bafc8419853b34d5e072ad37d1a51\
59f58488ac00000000
{
"hex" : "01000000011da9283b4ddf8d89eb996988b89ead56cecdc44041ab38bf787f1206cd90b51e000000006a47304402200ebea9f630f3ee35fa467ffc234592c79538ecd6eb1c9199eb23c4a16a0485a20220172ecaf6975902584987d295b8dddf8f46ec32ca19122510e22405ba52d1f13201210256d16d76a49e6c8e2edc1c265d600ec1a64a45153d45c29a2fd0228c24c3a524ffffffff01405dc600000000001976a9140dfc8bafc8419853b34d5e072ad37d1a5159f58488ac00000000",
"complete" : true
}
Send the above signed raw transaction:
bitcoin-cli -testnet sendrawtransaction 01000000011da9283b4ddf8d\
89eb996988b89ead56cecdc44041ab38bf787f1206cd90b51e000000006a4730\
4402200ebea9f630f3ee35fa467ffc234592c79538ecd6eb1c9199eb23c4a16a\
0485a20220172ecaf6975902584987d295b8dddf8f46ec32ca19122510e22405\
ba52d1f13201210256d16d76a49e6c8e2edc1c265d600ec1a64a45153d45c29a\
2fd0228c24c3a524ffffffff01405dc600000000001976a9140dfc8bafc84198\
53b34d5e072ad37d1a5159f58488ac00000000
f5a5ce5988cc72b9b90e8d1d6c910cda53c88d2175177357cc2f2cf0899fbaad
The returned value is the transaction’s identifier (TXID).
bitcoind -daemon -walletnotify=your_notification_command