Ethereum Payment QR Code Generator
An Ethereum address is 0x plus 40 hexadecimal characters, which is easy to mistype and impossible to proofread aloud. An Ethereum QR code lets a payer's wallet pick up the address, and optionally an ETH amount, in one scan. QRPebble outputs an EIP-681 payment request and does the fiddly conversion for you: type 0.05 ETH and the code carries the exact amount in wei, the unit EIP-681 expects. It's intended for plain ETH transfers to an address you control, such as donations, invoices or event payments. The generator runs in your browser and only ever needs your public address.
Static code: the data is encoded directly, so it never expires and is not tracked. Need to change the link after printing or count scans? Create a free dynamic code.
How to make it
- Paste your 0x address into the Ethereum address field from your wallet.
- Optionally enter an Amount in ETH; QRPebble converts it to wei precisely (1 ETH = 10^18 wei).
- Check the preview's first and last characters against your wallet.
- Download and test-scan with the wallet your payers are most likely to use.
What gets encoded
The payload is an EIP-681 URI: ethereum:<address>, plus ?value=<amount in wei> when an amount is set, e.g. ethereum:0xAbC…?value=50000000000000000 for 0.05 ETH. No chain ID is included, so wallets generally assume Ethereum mainnet. Token transfers and layer-2 networks aren't encoded. Wallet support for the value parameter varies: some prefill the amount, others read only the address. QRPebble checks that the address is 0x followed by 40 hex characters but doesn't verify the mixed-case checksum, so copy it rather than typing.
Where people use it
- Donations to open-source projects or creators
- Invoices payable in ETH
- Conference booth or hackathon payments
- A tip link on a portfolio or NFT artist's site
Tips before you print
- Tell payers which network to use; sending on the wrong chain is a common and costly mistake.
- Don't use this code for ERC-20 tokens such as USDC; it encodes a plain ETH transfer only.
- Test with a tiny amount first, since blockchain transfers can't be reversed.
- Print the address in text below the code so people can compare it with what their wallet shows.
FAQ
Why does the code show such a large number?
EIP-681 amounts are in wei. 0.05 ETH is 50,000,000,000,000,000 wei, and wallets convert it back to ETH.
Can I request USDC or another token?
Not with this generator. It builds plain ETH payment requests on the default network.
Does it work with MetaMask?
Wallets that scan EIP-681 codes, including many popular mobile wallets, read the address. Always test with the wallet you expect payers to use.