Crypto Payment QR Code Generator

Turn any wallet address into a scannable payment QR code. Supports Bitcoin (BIP-21), Ethereum and ERC-20 tokens (EIP-681), USDT on Tron, Solana Pay and Lightning. Free, private, generated entirely in your browser.

Paste the address from your wallet's "Receive" screen. Double-check the first and last characters.
BTC

Generated in your browser. Addresses are never uploaded or stored.

What is a crypto payment QR code?

A crypto payment QR code is a wallet address, optionally with an amount and label, encoded as a scannable image in the payment-link format of its network: BIP-21 for Bitcoin, EIP-681 for Ethereum and ERC-20 tokens, the Solana Pay spec for SOL and SPL tokens, and a BOLT11 invoice or LNURL for Lightning. The payer's wallet scans it, fills in the recipient and amount, and the payer only has to confirm.

Pick your coin

Address tools

Unit converters

Developer tools

Transaction decoders

Batch transfer (testnets)

How it works

  1. Choose the coin and network. USDT exists on several networks; the sender must use the same one as your address, so pick carefully.
  2. Paste your receiving address from your wallet. The form checks the format for the selected network and refuses obvious mistakes.
  3. Add an amount, label and message if you want the payer's wallet pre-filled. Leave them blank for a reusable "pay any amount" code.
  4. Download PNG or SVG, or copy the payment link to paste in a chat or email.

What the QR code contains

Each network has its own standard for payment links, and wallets recognise these formats when they scan a code:

You can always open "Show encoded content" under the code to see exactly what was encoded.

Safety checklist

Frequently asked questions

Which coins and networks are supported?

Bitcoin, Litecoin, Dogecoin, Lightning (BOLT11 invoices, LNURL and Lightning addresses), Ethereum, USDT and USDC on Ethereum (ERC-20), USDT and TRX on Tron (TRC-20), and SOL, USDT and USDC on Solana via Solana Pay.

Is my address uploaded anywhere?

No. The QR code is built by JavaScript running in your browser. Nothing you enter leaves the page, and there is no server-side processing or storage.

What is the difference between a plain address and a payment request?

A plain-address code contains only the address, and every wallet can read it. A payment-request code adds the amount, label and message in a standard format (BIP-21, EIP-681 or Solana Pay) so the payer's wallet pre-fills the transaction. Most modern wallets support both; use plain address if a customer reports a scanning error.

Can the payer change the amount?

Yes. The amount is a suggestion that the wallet pre-fills; the payer can usually edit it before confirming. Check the amount received on-chain before delivering goods.

Can I use the same QR code forever?

For Bitcoin, Ethereum, Tron and Solana, yes, as long as you control the address. Lightning invoices are single-use and expire; use a Lightning address for a permanent code.

Is this safe for a shop?

Yes. The QR code only contains your public receiving address. Nobody can withdraw from your wallet with it. Just verify the address before printing and test with a small payment.