Quick answer: paste your receiving address from your wallet and, if you like, an amount in BTC (for example 0.0015), a label and a message. The code follows BIP21 – bitcoin:address?amount=…&label=… – which wallets read to fill everything in. The address is checked as you type; always send yourself a tiny test amount first.
Public address only – never your keys
A receiving address (starting with bc1, 1 or 3 for Bitcoin) is safe to share: people can only send coins to it. A private key or the 12/24-word recovery phrase gives full control of your wallet – it must never be put into a QR code, a website or a message. This page only needs the public address.
Why a QR code instead of copy-paste?
Crypto addresses are long and unforgiving – one wrong character and the coins are gone. Malware that swaps copied addresses is also common. Scanning the code directly from your printed sign or screen avoids both problems, and BIP21 lets you pre-fill the amount for invoices and point-of-sale.
What BIP21 puts in the code
| Part | Example | Purpose |
|---|---|---|
| Address | bitcoin:bc1qxy2k… | Where the coins go (required) |
| amount | ?amount=0.0015 | Pre-fills the amount in BTC |
| label | &label=Coffee%20Corner | Shown as the payee name |
| message | &message=Invoice%201042 | Shown as the payment note |
Accepting regular money too? Offer a PayPal QR code or a UPI QR code next to this one. Before printing, scan the downloaded file with the QR Code Reader to confirm the address character by character.
How to make a Bitcoin QR code
- Copy your receiving address. In your wallet tap Receive and copy the address – not your seed phrase or private key.
- Paste it and add an amount. Amount is optional and in BTC, for example 0.0015.
- Check the address. Compare the first and last six characters with your wallet.
- Test, then download. Scan with a different wallet app, send a small test amount, then download PNG, SVG or PDF.
Address types you might have
| Starts with | Type | Notes |
|---|---|---|
| bc1q… | Native SegWit (Bech32) | Lower fees; the default in most modern wallets |
| bc1p… | Taproot | Newest type; supported by up-to-date wallets |
| 3… | Nested SegWit (P2SH) | Works everywhere |
| 1… | Legacy | Works everywhere, higher fees |
Bech32 addresses (bc1…) are case-insensitive and make slightly smaller QR codes. The generator checks the shape of your address and warns if it doesn’t look like Bitcoin – for example if you pasted an Ethereum address by mistake.
Point-of-sale with a fixed amount
Bitcoin’s price moves, so a printed code with a fixed BTC amount goes out of date quickly. For a counter sign, leave the amount empty and let the customer’s wallet convert from your local price. For an invoice, create a fresh code with the exact amount and a label such as the invoice number, and send it with the invoice.
Checklist before you share or print
- Compare the first and last six characters of the address with your wallet’s Receive screen.
- Scan the code with a different wallet app and check the address and amount it shows.
- Send a tiny test payment and wait for it to appear in your wallet.
- Never print or photograph your recovery phrase – it is not needed for receiving.
Frequently asked questions
Is it safe to share my Bitcoin QR code?
Yes, if it contains your public receiving address. It only allows people to send you coins. Never put a private key or recovery phrase in a QR code.
What is BIP21?
BIP21 is the standard format for Bitcoin payment links: bitcoin:address?amount=…&label=…. Almost every wallet supports it.
Can I use the same QR code many times?
Yes, but for privacy many wallets generate a new address for each payment. Reusing an address makes your history easier to link.
Does it work with Lightning?
Lightning invoices are separate one-time payment requests. Paste a Lightning invoice into the Text QR code generator, or use your Lightning wallet’s own code.
Do you see my address?
No. The code is drawn in your browser and nothing is sent to us.
Can I accept other coins here?
This generator is for Bitcoin only, so the format and checks are always right. For another coin, use the receive QR code from that coin’s wallet, or paste the address into the Text QR code generator and print the network name beside it.
What do the label and message fields do?
They are optional BIP21 fields. Wallets show the label as the payee name and the message as the payment description.
Why does the tool warn that my address looks wrong?
Bitcoin addresses start with bc1, 1 or 3 and use a limited set of characters. If you see the warning, check you copied a Bitcoin receiving address and not another coin’s address.
Can someone steal my bitcoin from this QR code?
No. A receiving address only lets people send coins to you. Only your private key or recovery phrase can move coins out, and they are never needed here.