Cryptocurrency QR Codes — Bitcoin, Ethereum, and Beyond
How crypto QR codes work: BIP21 URI format, wallet address encoding, amount pre-fill, and security best practices for Bitcoin, Ethereum, and other chains.
Cryptocurrency was practically built for QR codes. Wallet addresses are 26-62 character strings of mixed-case alphanumeric characters that nobody should ever have to type manually. One wrong character and your funds go to a nonexistent address — or worse, someone else's. QR codes eliminate that risk entirely.
How Crypto QR Codes Work
Every major cryptocurrency uses a URI scheme that wallet apps recognize. When a QR code encodes this URI, any compatible wallet app opens with the address (and optionally the amount) pre-filled.
URI Formats by Chain
| Cryptocurrency | URI Format | Example |
|---|---|---|
| Bitcoin (BTC) | bitcoin:?amount=0.01 | BIP21 standard |
| Ethereum (ETH) | ethereum:?value=1e18 | EIP-681 standard |
| Litecoin (LTC) | litecoin:?amount=0.5 | Based on BIP21 |
| Bitcoin Cash (BCH) | bitcoincash:?amount=0.1 | CashAddr format |
| Solana (SOL) | solana:?amount=1 | Solana Pay spec |
| Dogecoin (DOGE) | dogecoin:?amount=100 | Based on BIP21 |
label (recipient name), message (payment description), and r (payment request URL for more complex transactions).
BIP21 in Detail
A complete Bitcoin payment URI looks like this:
bitcoin:bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh?amount=0.001&label=QRMax&message=Premium%20subscription
Breaking that down:
bitcoin:— The scheme, tells the wallet which chainbc1qxy2k...— The receiving address (Bech32 in this case)amount=0.001— Requested amount in BTC (not satoshis)label=QRMax— Human-readable recipient namemessage=Premium%20subscription— Description of the payment
The amount is optional but strongly recommended for point-of-sale use. Without it, the sender has to manually enter the amount, introducing error.
Ethereum's EIP-681
Ethereum's format is slightly different and more complex because ETH transactions can include smart contract calls:
ethereum:0x89205A3A3b2A69De6Dbf7f01ED13B2108B2c43e7?value=1e18
The value parameter is in Wei (1 ETH = 1e18 Wei), which trips people up. For ERC-20 token transfers, the URI gets more complex with function calls and token contract addresses. Most wallet apps handle this gracefully, but generating the correct URI requires understanding the token's contract.
Creating a Crypto QR Code
For simple wallet address sharing, paste your address into QRMax and generate the QR code. For payment requests with pre-filled amounts, use the full URI format.
Keep in mind: a plain wallet address in a QR code works, but using the proper URI scheme (with bitcoin: or ethereum: prefix) is better because it triggers the wallet app directly instead of just showing the address as text.
Security Considerations
Crypto QR codes carry real financial risk. Some things to watch out for:
QR code replacement attacks. Malicious actors have been known to paste their own QR codes over legitimate ones at crypto ATMs and in-person payment terminals. Always verify the first and last few characters of the address after scanning. Screenshot and screen recording malware. Some malware monitors the clipboard and replaces copied wallet addresses. QR codes bypass the clipboard, which is actually a security advantage. Phishing QR codes. A QR code linking to a fake wallet interface that captures your seed phrase. Never enter seed phrases after scanning a QR code. Legitimate payment QR codes never ask for your private keys. Address verification. After scanning, always verify at least the first 6 and last 6 characters of the address match what you expect. This catches both QR substitution and encoding errors.Point-of-Sale Usage
The most common real-world crypto QR use case is merchant payments. The flow:
- Merchant's POS system generates a QR code with their address and the exact amount
- Customer scans with their wallet app
- Customer confirms and sends the transaction
- Merchant's system watches the blockchain for confirmation
lightning: URI or BOLT11 invoices) for instant payments, which is increasingly used at physical stores accepting BTC.
El Salvador's Chivo Wallet, adopted as part of the country's Bitcoin legal tender law, relies entirely on QR codes for peer-to-peer and merchant payments. As of 2025, roughly 5 million Chivo Wallet QR transactions have been processed.
Related Tools
- QR Code Generator — Generate crypto payment QR codes with URI formatting
- Bitcoin QR Code — Dedicated Bitcoin address and payment QR codes
- Ethereum QR Code — Ethereum and ERC-20 token QR codes