Bitcoin
Network specific features and requirements for Bitcoin wallets.
UTXO model
Bitcoin is the first cryptocurrency and uses the UTXO model. This guide explains Bitcoin specific behavior when using IBM Digital Asset Haven wallets.- UTXO selection: IBM Digital Asset Haven automatically selects UTXOs for your transactions. This includes unconfirmed UTXOs from pending transactions.
- Consolidation: Having many small UTXOs can increase transaction fees. You can reduce fees by consolidating funds through a self transfer.
Multiple addresses
If you need multiple Bitcoin addresses, such as one per customer for deposit tracking, create a separate key for each address. Each key produces an independent Bitcoin wallet with its own address. Key creation scales linearly and supports large numbers of addresses. IBM Digital Asset Haven uses MPC instead of hierarchical deterministic derivation such as BIP 32 or BIP 44. There are no seed phrases or derivation paths. Each key and its shares are generated and stored independently. This provides the same functionality as deriving multiple addresses while improving isolation between keys.
Address types
| Address Type | Prefix | Signature |
| Pay to Taproot (P2TR) | bc1p... |
Schnorr |
| Pay to Witness Public Key Hash (P2WPKH) | bc1q... |
ECDSA |
EdDSAorSchnorrfor Taproot addressesECDSAfor SegWit addresses
Transfers
Use the Transfer Asset endpoint with kind: Native to send BTC. Specify the amount in satoshis. One BTC equals 100,000,000 satoshis.- Fee priority
-
Bitcoin fees vary with network congestion. Use the
priorityfield to select a fee tier.
Estimate Fees endpoint to determine suitable fees.Priority Description Slow Lower fees, longer confirmation time Standard Balanced fees and confirmation time Fast Higher fees, faster confirmation - Fee bumping
- Bitcoin supports Replace By Fee (RBF) and Child Pays for Parent (CPFP) to increase transaction fees on pending transactions.
- Replace By Fee (RBF)
-
IBM Digital Asset Haven enables RBF by default. If a transaction is stuck, use the /api-reference/wallets/speed-up-transfer endpoint to replace it with a higher fee version.RBF creates a new transaction that:
- Reuses the same inputs as the original transaction
- Sends the same amount to the same recipient
- Increases fees by reducing the change output
- Child Pays for Parent (CPFP)
-
CPFP increases fees by spending an unconfirmed output with a higher fee. The child transaction motivates miners to confirm both the parent and child transactions. IBM Digital Asset Haven provides implicit CPFP by using unconfirmed UTXOs when building transactions. For explicit CPFP transactions, build a custom PSBT with the SDK.