A Bitcoin QR code holds a payment URI in the BIP 21 format, bitcoin:<address>?amount=<BTC>, so a wallet app that scans it fills in the address and, if you set one, the amount. This generator also builds Litecoin, Dogecoin, Bitcoin Cash, and Ethereum links. It builds them in your browser, and it never sees a private key, because a receiving address does not need one.
This article is general information, not financial or investment advice. Crypto payments are irreversible, so confirm every address before you send funds.
How do you make a crypto QR code?
- Choose the coin in the Cryptocurrency menu.
- Paste your receiving address into Wallet Address. Do not use the placeholder:
1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNais the address from Bitcoin's first block, not yours. - Optionally enter an Amount in whole coins, not in satoshis or wei.
- Download the code and scan it with the wallet you plan to receive from or send with.
For a Bitcoin address and 0.01 BTC, the code contains this text:
bitcoin:bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh?amount=0.01
Why does Ethereum use a different amount format?
Bitcoin, Litecoin, Dogecoin, and Bitcoin Cash links use the BIP 21 style: a decimal amount in coins, with no commas and no exponent. Ethereum's payment URI standard, EIP-681, has no amount at all. It defines value, counted in wei, the smallest unit, and its own example requests 2.014 ETH as value=2.014e18.
The generator converts your amount for you, so 0.01 ETH becomes:
ethereum:0xAbC…?value=10000000000000000
Wallet support for the amount varies. If a wallet ignores it, the payer types the amount. Always check the amount on the wallet's confirmation screen.
Which address types work?
| Bitcoin address starts with | Type | Notes |
|---|---|---|
bc1q | Native SegWit (Bech32) | The common modern format, defined in BIP 173 |
bc1p | Taproot (Bech32m) | Defined in BIP 350. Not every older wallet can send to it |
3 | P2SH | Script addresses, used for multisig and for wrapped SegWit |
1 | Legacy (P2PKH) | The original format; larger transactions |
The generator does not validate the address or its checksum, and it does not check that the address matches the coin you selected. A Litecoin address under the Bitcoin option produces a code that looks normal and fails at the wallet, or worse, sends to the wrong network.
Can this code request a stablecoin or token?
Not correctly. The Ethereum option requests the native coin, ether. Tokens such as USDT or USDC live in contracts and need EIP-681's function-call form, which this generator does not build. A payer who sends a token to your address on the wrong network can lose it. If you accept stablecoins, use the payment request feature of your wallet, which knows the network and the token contract.
Is a static crypto code a good idea?
Only for small, occasional payments and tips. A printed code means every payer sends to the same address, which is convenient and bad for privacy: reusing an address links all payments to it together. For business sales, generate a new address or invoice per payment in your wallet or payment processor, and put that on the screen instead.
- Static code, static sticker: a fake sticker pasted over yours redirects payments, and there is no way to recall them.
- Small test first: send a minimal amount and confirm it arrives before you print a batch.
- Compare more than the ends: lookalike addresses can share the first and last characters, so check the middle of the address for larger sums.
Why scan instead of copy and paste?
Clipboard-hijacking malware watches for a copied address and swaps in the attacker's. A scan skips the clipboard, and the wallet shows the address so you can verify it. That protects the payer's device, but it does not protect against a tampered sign, which is a different risk.
The page works without a network after it has loaded: you can disconnect, generate a code, and see that nothing is transmitted. That is the practical way to check a "client-side only" claim yourself.
How do you test it?
Scan with your wallet, stopping at the confirmation screen, and read the address and amount. Use the payload decoder to view the raw URI. Print at a sensible size with the print size guide, and prefer SVG for signs. For risks and scams around codes, see can QR codes be hacked? and the wider payment QR code guide.