Bitcoin Payment QR Code
Bitcoin Payment QR Code creates bitcoin:address and optionally appends ?amount=value. It does not validate the address, network, checksum, amount, decimal precision, ownership, wallet compatibility, fees, or current exchange value. Cryptocurrency transfers can be irreversible, so the recipient and amount must be verified in the wallet before approval.
Runs locally — files stay on your deviceDoes generation prove the Bitcoin address is correct?
No. The address and amount are inserted as entered without validation.
A BIP 21 URI is a payment request, not a transaction
The URI can suggest a recipient and parameters to a compatible wallet. The wallet and user still construct, review, sign, and broadcast any transaction.
How it works
Enter the recipient string and optional BTC amount. The page concatenates them into a simple bitcoin URI and encodes it.
Key concepts
QR replacement attacks are possible
A printed or displayed code can be swapped for an attacker's address.
The wallet is the final control
Verify address, amount, network, and fees before signing.
When to use it
- Draft a static payment request for a verified address.
- Reduce manual address transcription.
- Test BIP 21 handling in a wallet.
When not to use it
- Do not use an address received through an unauthenticated channel.
- Do not rely on the page to validate amount or network.
- Do not scan and approve without comparing the wallet display.
Worked examples
Address only
- Input
Verified Bitcoin address- Expected output
bitcoin:address
The wallet prompts for amount.
Amount request
- Input
Address; amount 0.001- Expected output
bitcoin:address?amount=0.001
The value is inserted as text.
Invalid amount
- Input
Amount abc- Expected output
QR still generated
No numeric validation occurs.
Common mistakes
Skipping address comparison
Malware or tampering can replace the destination. Correction: Verify on a trusted wallet display.
Assuming network validation
The generator does not parse address formats. Correction: Let a trusted wallet reject incompatibility.
Treating the request as paid
A QR does not prove a transaction occurred. Correction: Verify confirmations independently.
Best practices
- Authenticate the source of the request.
- Verify wallet-displayed recipient and amount.
- Use a fresh address according to wallet privacy guidance.
Related operations and differences
Ethereum Payment QR Code
Choose Ethereum Payment QR Code when you need to create an Ethereum payment URI QR code.; use Bitcoin Payment QR Code specifically for qr bitcoin.
Code 128 Generator
Choose Code 128 Generator when you need to generate a downloadable Code 128 barcode.; use Bitcoin Payment QR Code specifically for qr bitcoin.
Code 39 Generator
Choose Code 39 Generator when you need to generate a Code 39 barcode.; use Bitcoin Payment QR Code specifically for qr bitcoin.
Contact vCard QR Code
Choose Contact vCard QR Code when you need to create a contact card QR code.; use Bitcoin Payment QR Code specifically for qr bitcoin.
EAN-13 Generator
Choose EAN-13 Generator when you need to generate an EAN-13 retail barcode.; use Bitcoin Payment QR Code specifically for qr bitcoin.
EAN-8 Generator
Choose EAN-8 Generator when you need to generate a compact EAN-8 barcode.; use Bitcoin Payment QR Code specifically for qr bitcoin.
Limitations and privacy
- No address, checksum, network, amount, fee, ownership, balance, payment, or confirmation validation.
- Only the simple amount parameter.
- No exchange-rate conversion.
Generation happens locally in this browser. The PNG contains the entered payload, so share it with the same care as the underlying data.
Frequently asked questions
Does it send Bitcoin?
No.
Is the address validated?
No.
Is amount validated?
No.
Does the QR prove payment?
No.