Set up Bull Bitcoin

A self-custodial wallet built for spending. You get two wallets from one backup: an on-chain Bitcoin wallet for savings, and an instant wallet on Liquid for everyday payments. Lightning is temporarily out of service, explained on the first step. Everything this guide covers works normally. Create the wallet, write down your recovery words, and learn to receive and send.

6 stepsabout 20 minbest for spending

What you will have at the end

  • A self-custodied wallet, with the keys on your phone
  • One set of recovery words written down safely
  • The confidence to receive, spend and recover

Install and open Bull

Goal: Get through the first-run screens with the settings you actually want.
  1. Install Bull Bitcoin, open it, and tap Next on the welcome screen.
  2. Set your theme, language and default currency. You can change all of these later.
  3. Bull asks whether to send anonymised error logs. Yes or No both work; No is the more private choice.
  4. The last screen lists features to explore later. Tap Get started.
Lightning is temporarily unavailable in Bull. The swap provider it relied on suspended service, and Bull is working on a replacement. On-chain Bitcoin and Liquid both work normally, your funds are unaffected, and everything in this guide is on-chain. See Bull's announcement for details.
What Bull actually is
A self-custodial wallet with an optional exchange bolted on. The keys are generated on your phone and never leave it, and you do not need a Bull Bitcoin account to use any wallet feature. The buy and sell buttons only matter if you choose to use them.

Create your wallet

Goal: Generate your keys on the phone, which creates both of Bull's wallets at once.
  1. Tap Create New Wallet. Your keys are generated on the device.
  2. Advanced Options is optional. It lets you route through Tor or point the app at your own Electrum and Mempool servers, and you can set all of it later in App Settings.
  3. Bull opens on your dashboard with two wallets: Secure Bitcoin on the Bitcoin network, and Instant payments on Liquid.
  4. You'll notice the banner Autoswap is active, click on it for details. Left on, it sweeps the instant wallet back down to a target balance once it goes over a maximum, moving the surplus into Secure Bitcoin so spending money does not quietly pile up on Liquid. Default is on, feel free to toggle it off if you don't plan to use liquid.
Why two wallets, and what Liquid is
Both wallets come from the same recovery words, so one backup covers both. Secure Bitcoin holds real on-chain bitcoin. Instant payments sits on Liquid, a sidechain that settles in seconds for a fraction of a cent, which is what makes small payments practical. Liquid is not the Bitcoin main chain though: it is run by a federation of functionaries, so you are trusting that group in a way you are not on-chain. Treat the instant wallet as pocket money and keep savings in Secure Bitcoin. Autoswap is Bull's way of enforcing exactly that split for you: set a target and a maximum, and anything above the maximum is swept into Secure Bitcoin, with a fee ceiling so it will not move funds on an expensive day. It is a swap under the hood, so it is one of the things that stopped working when Boltz suspended service, and you can turn it off outright.

Write down your recovery words

Goal: Save your seed words, they are the only way to recover your wallet.
  1. On the dashboard, tap Protect your bitcoin. Back up your wallet now.
  2. Choose the physical backup option, which shows you the words to write down. (The encrypted vault option stores an encrypted copy with a provider; this guide uses paper.)
  3. Write the words down in order on paper, then confirm them when Bull asks.
  4. Once confirmed, the warning disappears from your dashboard. That is how you know the backup is done.
Bull blocks screenshots on the recovery-words screens, which is a good thing: never photograph or type your words into anything. Paper only, stored somewhere only you can reach.
One backup, both wallets
The same words restore Secure Bitcoin and Instant payments, so there is only ever one set to protect. Bull keeps nagging you on the dashboard until you have proven the backup by typing the words back in, which is worth doing properly. If the app is ever wiped or broken by an update, those words are the whole recovery path.

Receive bitcoin

Goal: Get an address and watch a payment arrive.
  1. Tap Receive, then pick the network. Choose Bitcoin to follow this guide. The screen also offers Liquid, and a Lightning tab that is out of service for now.
  2. Share the QR code or copy the address. You can add an optional amount and a private note.
  3. Your balance updates when the payment arrives, and the wallet card shows it.
  4. Tap the transaction to see it while it is Pending.
  5. Once it is in a block, the status becomes Confirmed with a confirmation time.
Which network should I receive on?
On-chain Bitcoin for anything you intend to keep, because it settles on the main chain. Liquid for small everyday amounts, because a small on-chain payment can cost more in fees than it is worth. Bull nudges you toward the sensible one based on the amount, and warns you when a payment is uneconomical. Lightning would normally be the other everyday option, but it currently out of service. For now, stick with on-chain (Secure Bitcoin).

Send bitcoin

Goal: Send a payment and choose what you pay in fees.
  1. Open your Secure Bitcoin wallet and tap Send. Scan the recipient's code with Open the Camera, or paste their address into Recipient's address, then tap Continue.
  2. Enter the amount. Tap the arrow beside it to switch between sats and another currency, add a note to remember what the payment was for, or flip MAX to send the whole balance. Tap Continue.
  3. The confirm screen lists the wallet it leaves From, the address it goes To, your note, the amount and the network fee. Confirm the address here.
  4. To change what you pay, tap Fee Priority: Fastest, Economic, Slow, or a custom rate. Bull shows each one in sats per vByte, in sats, and in your currency.
  5. Tap Confirm. Bull signs and broadcasts it, then shows Successfully Sent.
  6. Tap View Details for the transaction ID and status. While it says Pending you can Accelerate it, which re-sends the same payment with a higher fee.
  7. Back in the wallet the payment sits under Pending with your note, and the balance already accounts for it.
Always re-read the address before you confirm. Bitcoin transactions cannot be reversed.
Choosing a fee
Fees pay the miners who include your transaction in a block, and they rise and fall with demand. Slow is fine when nothing is waiting on it; Fastest is worth it when someone is standing in front of you. If you pick too low and get impatient, Accelerate re-sends it with a higher fee.

If you lose your phone

Goal: Get both wallets back on a new device using your written words.
  1. Install Bull on the new phone and tap Recover Wallet instead of creating one.
  2. Enter your recovery words in order.
  3. Both Secure Bitcoin and Instant payments come back, since they share the one seed. Give it a moment to sync.
  4. You can also restore into any other BIP39 wallet, meaning any wallet that recovers from recovery words, though only Bull will rebuild the Liquid side.
Treat the lost phone as compromised. After recovering, create a brand new wallet (a fresh set of keys with its own new recovery words) and move all funds to it. Anyone who ends up with the old phone or its written words could otherwise take your bitcoin.
Why this step matters more here
This is a hot wallet on a phone, and phones break, get stolen, and occasionally get bricked by a bad app update. That is survivable when the amounts are small and the words are on paper, and unrecoverable when they are not. Practise a recovery once with a trivial amount so you know it works before you rely on it.
Now you're hodling

You are self-custodied

Your keys are on your phone and your words are on paper. Keep the amounts here to what you would carry in a wallet, and when your stack grows, move the savings onto dedicated hardware.

Overview