Make an Ethereum QR Code From Your Wallet Address

Paste your 0x address, add an amount if you want one, and download a code that any Ethereum wallet reads - exported at print quality, with the checksum casing left intact.

1 Content
https://
No registration required Unlimited QR codes No watermark Free high-resolution downloads
2 Design
Shape
Pattern
Eyes
3 Preview
Copied!

What Is an Ethereum QR Code?

An Ethereum QR code is a QR code that stores an Ethereum payment URI - an address, and optionally a value - written in the EIP-681 format. Scanning it in a wallet app fills in the recipient so nobody has to retype a 42-character hex string. The address lives in the pattern; no transaction happens until the sender approves one.

The KoloQR designer with a QR code being styled - shape, colors and center logo

What EIP-681 Puts Inside the Pattern

The payment URI is a compact structure, and one of its parts trips up almost everyone the first time:

  • ethereum: - the scheme. It is what makes the phone offer the code to a wallet app rather than to a browser.
  • The 0x Address - 42 characters: the 0x prefix and 40 hexadecimal digits. Its mixed case is not decoration, and the next section explains why.
  • ?value= - optional, and expressed in wei rather than in ether. One ETH is 10^18 wei, so 0.5 ETH is written as 500000000000000000 - eighteen zeros are easy to miscount by hand.

KoloQR converts the amount you type in ETH into wei for you, which removes the most common hand-built-URI error. Nothing in the code touches a network: an Ethereum QR code is text about where to send funds, and it cannot move anything on its own.

Never Uppercase an Ethereum Address

An Ethereum address is hexadecimal, so its letters could in principle be written in either case - and EIP-55 uses exactly that freedom to carry a checksum. The pattern of capitals and lowercase letters across the 40 hex digits is derived from a hash of the address itself, which lets every wallet detect a mistyped or corrupted address before it sends anything. Flatten the case and you throw that protection away: the address still points at the same account, but no wallet can tell whether it is the address you meant, and some refuse a mixed-case address whose checksum does not validate. This is the exact opposite of the Bitcoin bech32 trick, where uppercasing is recommended because it makes the QR pattern sparser - and it is why the two must never be treated as the same technique. On Ethereum, copy the address exactly as your wallet gives it to you, never retype it, and never let a design tool or a spreadsheet normalise the case. The denser pattern is the price of a checksum that catches errors, which on a payment code is a good trade.

Generate QR Code
A phone scanning a printed QR code to test it before the print run

Where Ethereum QR Codes Are Used

Forty-two hexadecimal characters is not something anyone should transcribe, which is why the code turns up wherever an address has to leave a screen:

Donation and Tip Signage

A printed code by a till or on a stand collects from people who already hold ETH, with no processor in the middle.

Conference and Hackathon Stands

Ethereum events settle payments and bounties on the spot, and a stand code is faster than reading hex aloud.

Invoices for Crypto-Native Clients

A code beside the total lets the payer scan rather than copy, which removes the most common cause of a failed transfer.

Artist and Creator Support Pages

A code on a print, a sleeve, or an overlay gives collectors a direct route that a payment page cannot.

Hardware Wallet Setup Cards

The receiving address is printed as a code so funds can be sent in without exposing anything that can spend them.

Point-of-Sale Screens

A merchant screen regenerates the code per sale with the amount already converted to wei, which is where fixed amounts belong.

How to Create an Ethereum QR Code

Address, amount, download - and one check that matters:

Generate QR Code
  1. 1

    Copy the Address Exactly From Your Wallet

    Copy and paste it, never retype it, and never change the capitalisation. The mixed case is the EIP-55 checksum, and flattening it removes the only error protection the address has.

  2. 2

    Open the Type Picker and Choose Ethereum

    Ethereum sits under More, in the Crypto group. Paste the address, and enter an amount in ETH if you want one - KoloQR converts it to wei for the URI.

  3. 3

    Say Which Network It Is For

    The same address exists on every EVM chain. Print “Ethereum mainnet” - or the L2 you mean - beside the code, because the code itself cannot say it.

  4. 4

    Verify by Scanning, Character by Character

    Scan the exported file with a real wallet and compare the whole address against the one you copied, not just the first and last four. Then export SVG or PDF for print.

The KoloQR generator with a QR code being designed and ready to download

Which File Format Should You Download?

KoloQR exports your Ethereum QR code in three formats. Pick by where it will be seen:

  • PNG for point-of-sale screens, overlays, and web pages, where the code appears at one fixed size.
  • SVG for donation signage, invoices, and printed cards - anything a printer scales without softening the edges.
  • PDF for handing to a print shop or dropping into an invoice template at print-ready quality.

Ethereum codes are among the densest on this site: a 42-character mixed-case address cannot use the alphanumeric encoding, and a value in wei adds eighteen more digits. That combination needs vector export and generous sizing - a payment code that fails to scan sends someone back to typing hex by hand.

Generate QR Code

Best Practices for Ethereum QR Codes

A payment code has a failure mode no other QR type has, and Ethereum adds a second one on top of it:

  • Preserve the Address Casing Exactly

    The mixed case is the EIP-55 checksum. Flattening it to all lower or all upper strips the wallet's ability to detect a corrupted address before sending.

  • Always Name the Network

    The same 0x address exists on Ethereum, Arbitrum, Optimism, Polygon, Base and every other EVM chain. Funds sent on the wrong one are usually unrecoverable, and the code cannot say which you meant.

  • Let the Generator Convert ETH to Wei

    EIP-681 expresses value in wei - eighteen decimal places. Typing that by hand is how an amount ends up a thousand times too large or too small.

  • Verify the Whole Address After Generating

    Scan the exported file in a wallet and compare every character. Checking only the first and last four is exactly the shortcut address-swapping malware relies on.

  • Be Careful With Fixed Amounts in Print

    A value in wei is fixed the moment it is printed while the exchange rate is not. Print the address alone on anything long-lived and let the sender enter the amount.

  • A Plain Address Code Won't Move Tokens

    It requests ETH. Sending USDC or any other ERC-20 needs a token transfer, which a plain address URI does not express - so label the code with the asset you expect.

  • Keep the Modules Pure Black

    Style the artwork around the code, not the pattern. This is the one type where a marginal contrast ratio is never worth the design.

  • Protect the Quiet Zone

    Four modules of clear margin on every side, and more on a busy sign. Error correction can rebuild damaged modules; it cannot find a code with no margin.

  • Size It Generously

    At least a tenth of the reading distance, then a step larger. These are dense symbols, and density is the thing print quality punishes first.

  • Never Publish a Private Key or Seed Phrase as a Code

    A receiving address is safe to show anyone. A private key or seed in a QR code is the entire wallet, readable by every camera in the room.

Why Your Ethereum QR Code Isn't Working

An Ethereum code fails in ways worth knowing before money is involved. These four cover nearly every case.

  • The Wallet Warns That the Checksum Is Invalid

    Cause
    The address casing was changed somewhere between the wallet and the generator - flattened to lowercase by a spreadsheet, uppercased by a design tool, or retyped by hand.
    Fix
    Copy the address fresh from your wallet and paste it without editing. Never apply the Bitcoin uppercase trick to an Ethereum address; there the casing is free, here it carries the checksum.
  • Funds Were Sent and Never Arrived

    Cause
    Almost always the wrong network. The same address exists on every EVM chain, and a transfer on Polygon to an address you watch on mainnet is invisible in your wallet even though it succeeded.
    Fix
    Print the network name beside the code, in words, on every surface. Check the address on the block explorer for the chain the sender actually used before assuming anything is lost.
  • The Amount Was Wrong by Orders of Magnitude

    Cause
    The value parameter was written in ether rather than wei, or a hand-typed wei figure was miscounted. One ETH is eighteen zeros, and eighteen is hard to count.
    Fix
    Enter the amount in ETH and let the generator convert. If you are checking a URI you were given, count the digits after value= before trusting it.
  • The Code Is Very Dense and Hard to Scan

    Cause
    A mixed-case address cannot use the QR alphanumeric encoding, so all 42 characters go into byte mode at 8 bits each - and a wei value adds up to eighteen more digits.
    Fix
    Drop the value parameter if it is not essential, export SVG or PDF, and print larger. Uppercasing is not an option here; the checksum is worth more than the density saving.

Still not sure whether the fault is the file or the print? Drop the exported image into the QR code scanner - if it decodes on a desktop and not on paper, the fault entered after the file.

Questions? Answered

An Ethereum QR code stores a payment URI - an address, and optionally a value - in the EIP-681 format. Scanning it in a wallet app fills in the recipient, so nobody has to retype a 42-character hex string.

Copy the address from your wallet, choose Ethereum in KoloQR's type picker, and paste it in. Add an amount in ETH if you want one pre-filled, then download PNG or SVG. Nothing is sent to a server.

Because it's the EIP-55 checksum. The pattern of upper and lowercase letters is derived from a hash of the address, and it's what lets a wallet detect a corrupted address before sending. Flattening it removes that check.

No. Uppercasing a bech32 Bitcoin address is recommended because it makes the pattern sparser and the case carries no meaning. On Ethereum the case carries the checksum, so uppercasing destroys real error protection.

EIP-681 expresses it in wei - one ETH is 10^18 wei. Enter the amount in ETH and let the generator convert it; hand-typing eighteen zeros is how amounts end up a thousand times off.

A plain address URI doesn't. The same 0x address exists on Ethereum, Arbitrum, Optimism, Polygon and every other EVM chain, so print the network name beside the code - it's the most expensive mistake to get wrong.

A plain address code requests ETH. Tokens are moved by a contract call that a simple address URI doesn't express, so label the code with the asset you expect - senders choose the token in their wallet.

Yes, if it holds a receiving address - that's public and can only be used to send you funds. Never publish a private key or seed phrase in a code; that is the entire wallet, readable by any camera.

No. The scan fills in the recipient and, if present, the value. The sender still reviews and approves the transaction in their wallet - a QR code cannot move funds on its own.

Because the mixed-case address forces byte-mode encoding at 8 bits per character, where an uppercased bech32 address gets alphanumeric mode at 5.5. Add a wei value and the payload grows again - so print larger.

Why KoloQR?

  • Create QR codes for websites, menus, Wi-Fi, PDFs, and business cards
  • Customize colors, logos, and unique shapes
  • Download high-quality PNG and SVG files
  • Built for both print and digital
Generate QR Code
A plain black QR code beside the same code restyled as a circle with brand colors