githubEdit

wallet-btc

Overview of the @tetherto/wdk-wallet-btc module

A simple and secure package to manage BIP-84 (SegWit) and BIP-44 (Legacy) wallets for the Bitcoin blockchain. This package provides a clean API for creating, managing, and interacting with Bitcoin wallets using BIP-39 seed phrases and Bitcoin-specific derivation paths.

circle-exclamation

Features

  • BIP-39 Seed Phrase Support: Generate and validate BIP-39 mnemonic seed phrases

  • Bitcoin Derivation Paths: Support for BIP-84 (Native SegWit, default) and BIP-44 (Legacy) derivation paths

  • Multi-Account Management: Create and manage multiple accounts from a single seed phrase

  • Address Types Support: Generate Native SegWit (P2WPKH) addresses by default, with Legacy (P2PKH) support via configuration

  • UTXO Management: Track and manage unspent transaction outputs

  • Transaction Management: Create, sign, and broadcast Bitcoin transactions (single recipient per transaction)

  • Fee Estimation: Dynamic fee calculation via mempool.space API

  • Electrum Support: Connect to Electrum servers for network interaction

  • TypeScript Support: Full TypeScript definitions included

  • Memory Safety: Secure private key management with memory-safe implementation

  • Network Flexibility: Support for mainnet, testnet, and regtest

Supported Networks

This package works with Bitcoin networks:

  • Bitcoin Mainnet ("bitcoin")

  • Bitcoin Testnet ("testnet")

  • Bitcoin Regtest ("regtest")

Electrum Server Configuration

Important: While the package defaults to electrum.blockstream.info:50001 for convenience, we strongly recommend configuring your own Electrum server for production use.

For Production:

  • Set up your own Fulcrum server for optimal performance and reliability

  • Use recent Fulcrum versions that support pagination for high-transaction addresses

For Development/Testing:

  • fulcrum.frznode.com:50001 - Generally faster than default

  • electrum.blockstream.info:50001 - Default fallback

Next Steps


Need Help?