BULL BITCOIN
Finance
Free
Private and Secure Bitcoin Wallet
BULL by Bull Bitcoin is a self-custodial Bitcoin wallet for iOS, designed for secure, private, and efficient management of Bitcoin, Lightning, and Liquid Network transactions. Ideal for both everyday payments and long-term storage, it empowers users to get paid, buy Bitcoin, spend Bitcoin, manage wallets, and securely hold assets with ease. Built on cypherpunk principles, BULL prioritizes user sovereignty, open-source transparency, and trustless operation, integrating cutting-edge technologies to make self-custody safer and simpler without compromising privacy or security. From a single BIP39 seed backup, it creates two interoperable wallets: an Instant Payments Wallet on the Liquid Network for seamless daily Lightning transactions and a Secure Bitcoin Wallet for on-chain payments and robust long-term storage.BULL is Bitcoin-only, segwit-native, and optimized for performance, with no clutter or distractions. It leverages cutting-edge technologies like PayJoin, Liquid’s confidential transactions, and atomic transfers to make self-custody accessible and secure while upholding cypherpunk values of privacy, sovereignty, and decentralization. Free and open-source, BULL is the ultimate platform for managing Bitcoin payments and securing assets for the long haul.
more This update makes coin control and payments more dependable.
Coin control
• Sends, MAX sends and transfers now spend only the coins you selected
• Stale or unavailable selections are rejected before broadcast
• Clearer errors for frozen balances and insufficient selections
Payments and transfers
• Fixed fee shortfalls in transfers, and failed Payjoins can now be retried
• The Receive QR now updates when Payjoin is toggled off
• Replace-by-fee now prefills a valid replacement fee
• Fixed stale payment-request handling on Send
• Fixed back navigation and transaction details for transfers
Hardware wallets
• Fixed Passport QR scanning and updated import instructions
Security
• Recovery phrases are kept out of app state, and passphrase punctuation is preserved exactly as typed
6.13.1 1 day ago
Payjoin
• Send and receive Payjoin transactions directly from your wallet, with configurable minimums and
automatic recovery of interrupted sessions — even after an app restart.
Wallet Improvements
• Liquid UTXO consolidation: get warned when your wallet approaches confidential-transaction input
limits, with a guided self-transfer to consolidate.
• Smarter recovery phrase entry: BIP39 word suggestions are now checksum-valid, with improved
inline validation and screen-capture protection.
• New Liquid risk disclosures covering custody, privacy, and fees.
• Explore places that accept Bitcoin with the new BTC Map in Settings — no location access
requested.
Wallet Improvements
• Liquid UTXO consolidation: get warned when your wallet approaches confidential-transaction input limits, with a guided self-transfer to consolidate.
• Smarter recovery phrase entry: BIP39 word suggestions are now checksum-valid, with improved inline validation and screen-capture protection.
• New Liquid risk disclosures covering custody, privacy, and fees.
• Explore places that accept Bitcoin with the new BTC Map in Settings — no location access requested.
Security & Privacy
• Hardened transaction review and broadcast: payloads are invalidated if details change.
• PIN retry cooldowns persist across restarts, with re-authentication required before revealing recovery phrases.
• Wallet imports now reject private keys and validate network, descriptor, and ownership.
• Stricter certificate, URL, timeout, and Tor handling.
• Enhanced parsing protections for QR, UR, BBQR, BIP21, and PSBT formats.
• Less sensitive information in logs, and warnings before sending to unconfidential Liquid addresses.
Reliability
• Wallet deletion no longer orphans seeds that block reimport.
• Startup failures can now share or export logs.
• Translations completed across 26 languages.
6.13.0 21 Aug
• Coins view — See every coin (UTXO) in your Bitcoin wallet with its amount, label, and confirmation status. Freeze coins you don't want to spend; frozen coins are excluded from all transactions until you unfreeze them.
• Coldcard NFC — Import and sign with Coldcard Q and Mk4 over NFC. Fully airgapped, no cables or SD cards.
• BitBox02 Nova on iPhone — Pair, import, and sign over Bluetooth. BitBox02 support is now available to everyone.
• Swap recovery — Swaps can now be restored and rescued even if the app loses its local data, using a dedicated swap key derived from your wallet seed.
• General reliability improvements in swaps and liquid wallet
• Fees below 1 sat/vB — Take advantage of a quiet mempool with fractional fee rates.
• Fixes — QR scanning restored on iOS; better handling of unusual payment QR codes; Lightning invoice memos shown before sending; sync indicator improvements; dark-mode fixes.
6.12.2 15 Jul
• Coins view — See every coin (UTXO) in your Bitcoin wallet with its amount, label, and confirmation status. Freeze coins you don't want to spend; frozen coins are excluded from all transactions until you unfreeze them.
• Coldcard NFC — Import and sign with Coldcard Q and Mk4 over NFC. Fully airgapped, no cables or SD cards.
• BitBox02 Nova on iPhone — Pair, import, and sign over Bluetooth. BitBox02 support is now available to everyone.
• Swap recovery — Swaps can now be restored and rescued even if the app loses its local data, using a dedicated swap key derived from your wallet seed.
• General reliability improvements in swaps
• Fees below 1 sat/vB — Take advantage of a quiet mempool with fractional fee rates.
• Fixes — QR scanning restored on iOS; better handling of unusual payment QR codes; Lightning invoice memos shown before sending; sync indicator improvements; dark-mode fixes.
6.12.1 9 Jul
• Smarter Wallet Sync
• Export transaction history to CSV by date range
• Improved error handling in Send and Transfer
• Optimisations to electrum client
• Better warnings and translations
• Dismissible number pads
6.11.1 15 Jun
New Features
Wallet & Storage
New onboarding/startup wizard
Ledger hardware wallet support
Increased Electrum stopGap — now allows values up to 5000
Wallet Support Chat
UX
Pull-to-refresh on wallet home — can be triggered from anywhere on the screen
Backup warning overlay — bottom sheet hard escalation warning for backup when wallet has funds and no backup is detected
Privacy & Payjoin
Randomized OHTTP relay selection — relay randomly selected per payjoin call via Random.secure() to prevent network fingerprinting
Payjoin self-transfer detection — detects self-spent transactions and shows a "Self-transfer" row on confirmation; self-spends bypass payjoin
Internationalization
11 new languages — Arabic, Bulgarian, Bengali, Czech, Greek, Persian, Hindi, Korean, Brazilian Portuguese, Thai, Turkish
Detailed German translations — community contributions from @bsn21m
Updated translations for new warning and wizard pages
Observability
Opt-in error reporting — optional, self-hosted Sentry (disabled by default) - only collects error reports and stack traces, no telemetry, no IP.
Detailed Sentry configuration to ensure user privacy
No app restart required after providing Sentry consent
Removed Recoverbull sync page
Server status page now makes more realistic calls
Bug Fixes
Wallet Core
Address index issue — fixed via update to bdk-dart (bdk 2.0)
Crash for unknown script transactions
Prevent duplicate mnemonic import
Mnemonic import freeze/crash
Capital letters in mnemonic — no longer accepted (was causing errors)
LWK database initialization — fixed Liquid wallet database init issues
Spam create wallet on startup
Startup lag — fixed lag during wallet and seed loading on startup
Startup error screen — gracefully handles and displays startup failures instead of freezing
Transfers
Transfer watcher race condition that could cause status update issues
MRH transfer — uses transaction ID to fully resolve as a transfer transaction
Transfer flow wallet autoselect — prevents self-spends or same-network sends in the transfer flow
Amountless invoice handling — throws a more descriptive error for amountless invoices on transfers
Autotransfer notice/warning fixes
Testnet fix for recoverbull
Send / Receive
LN receive success screen crash fixed
Insufficient balance navigation — Continue on send amount page with insufficient funds no longer navigates to confirm page
Backup & Security
Physical backup verification — fixed backup test status not updating after completing verification
Backup-before-PIN safety gate
Backup wallet warning on home now updates correctly after a backup is complete
"Vault created successfully" snackbar no longer covers the "Test Recovery" button
Labels & Persistence
Labels feature refactor — complete architecture refactor with database migration v11→v12; fixed upsert constraint failures, SQLite concurrency, and multiple related issues
Transaction note persistence
SQLite migration safety — catch blocks around label migration to prevent crash on failure
Network / Connectivity
Custom mempool server — SSL toggle (auto-detected from URL), improved URL parsing/normalization, server status indicators, dark mode fixes, and hidden service support via Orbot
Recoverbull Orbot detection — checks if Orbot is actually running on port 9050 instead of relying on user settings, preventing Tor-over-Tor errors
Input & Keyboard
iOS price input keyboard — fixed to show correct number pad with decimal settings
Keyboard lag — fixed lag when importing mnemonic passphrase or typing in label input fields
Theming
Dark theme fixes — QR code backgrounds, PSBT flow, Recoverbull button, custom Electrum server widget
PIN light theme readability
Custom fee dark mode
Light mode exchange banner
Delete logs dark mode fix
Transfer fees dark/light mode and text color fixes
Fade-to-background gradient no longer covers the title/description above the button
Pull to sync loader no longer lands behind the Bull logo
6.10.6 20 May
Fixes startup issue regarding secure storage access
6.5.4 13 Jan
Secure Storage UpdateMinor Theme Fixes
6.5.3 10 Jan
Autoswap triggered only after warning acknowledgement
Minor fixes in Send
6.5.2 8 Jan
- Improved Labelling
- Price Graph
- Dark Mode (Experimental)
- Localizations (Experimental)
- Various Bug Fixes
- Custom Mempool Server
- Autoswap On By Default
6.5.0 7 Jan
Secure Storage Patch (Fixes Red Screen Error)
6.4.1 18/12/2025
Background Sync & Pull to SyncNew Onboarding Flow - Allows setting custom electrum on startupBitcoin Electrum via OrbotCustom Recoverbull Server OptionImproved Electrum Server Configuration options and URL HandlingNew Hardware Support: Jade & PassportVarious Minor Bug Fixes
6.4.0 02/12/2025
Verify amounts before transfer
Add 3 sats to liquid transfer refund to ensure we do not go below 0.1 sats/byte fee and fail to broadcast
Show transfer to external wallets in transaction list
Proper transition to success screen on send flow
6.3.8 18/11/2025
Fix in receive transfer status update
Always allow max and disable recieve exact amount if max enabled
6.3.5 16/11/2025
More stability in transfers
Minor UI Updates
6.3.4 11/11/2025
More stability in Transfers
6.3.3 10/11/2025
Ark prototype improvements
Transfer improvements
Bip329 labels import/export
Recoverbull integration rewritten
Address over-generation bug fix
Various bug fixes and improvements
6.3.0 05/11/2025
Input formatter in swaps for BTC values with decimals
Duplicate watch only wallet entries is Transfer flow
Complete transfer without recieveTxid should retry
Better background quality and correct orientation
Fix in PaymentMethod enum preventing OrderSummary parsing
Ark v8
Default currency is now USD
Add support to external descriptors
6.2.1 22/10/2025
Various Minor Fixes
6.1.0 17/10/2025
Send, Receive, Transfer between wallets, Payjoin, Liquid, Hardware Support (Coldcard, Passport, Ledger)
6.0.0 14/10/2025
Fixes in KYC & E-TransferMinor UI Fixes
5.4.5 29/09/2025
This update makes coin control and payments more dependable.
Coin control
• Sends, MAX sends and transfers now spend only the coins you selected
• Stale or unavailable selections are rejected before broadcast
• Clearer errors for frozen balances and insufficient selections
Payments and transfers
• Fixed fee shortfalls in transfers, and failed Payjoins can now be retried
• The Receive QR now updates when Payjoin is toggled off
• Replace-by-fee now prefills a valid replacement fee
• Fixed stale payment-request handling on Send
• Fixed back navigation and transaction details for transfers
Hardware wallets
• Fixed Passport QR scanning and updated import instructions
Security
• Recovery phrases are kept out of app state, and passphrase punctuation is preserved exactly as typed
more Version 6.13.1 1 day ago
Data Not Collected The developer does not collect any data from this app.