free · 0% fees · 60sclaim your page
merchant guides/ 8 min read

how to accept ethereum payments

mainnet vs L2s compared, a worked cross-border example, the mistakes that cost real money — and ETH straight to your own keys.

How to Accept Ethereum Payments
share whatsapp post

ETH is the second-largest crypto asset and the default currency of the on-chain economy. Crypto-native customers — developers, NFT communities, DAOs, Web3 teams — often prefer paying in ETH straight from the wallet they already use every day.

This guide covers the decisions that actually matter: mainnet versus L2s (with numbers), how to price invoices in an asset that moves, the mistakes that cost merchants real money, and a setup that puts every payment in a wallet only you control.

why accept ETH specifically

If your clients are agencies, developers, DAOs or anyone paid in crypto themselves, ETH is the asset already sitting in their wallet — no acquisition step, no exchange trip, no friction. For services billed at four figures and up, 'pay this exact ETH amount to this address' converts remarkably well with crypto-native buyers.

ETH also carries the deepest liquidity outside Bitcoin: whatever you decide to do after settlement — hold, convert a portion to stablecoins, or sweep to cold storage — the market is always there.

mainnet vs L2s — where should payments land?

Ethereum payments on crypt.pe settle on mainnet plus the two major L2s, Base and Arbitrum. The asset is the same ETH; the rails differ on cost and feel:

networktypical network feespendable inbest for
Ethereum mainnetroughly $1–5, spikes higher in congestion~15 sec – 2 minlarge invoices, conservative payers
Basearound a centsecondseveryday payments, small tickets
Arbitruma few centssecondsDeFi-native clients

The practical rule: enable an L2 so small payments aren't eaten by mainnet gas, and keep mainnet on for clients who insist on it. Your address is the same 0x… on all three.

the wallet decision

Any self-custody EVM wallet works — MetaMask, Trust Wallet, SafePal, or a hardware wallet (Ledger, Trezor) once balances get serious. One address covers mainnet, Base and Arbitrum, so a single paper backup of the seed protects all three rails.

Share only the public 0x address with your payment tool — never a seed phrase, never a private key. On crypt.pe you paste the address once and ETH appears on your payment page with a QR, network selection and live pricing in your display currency.

a worked example: the $4,500 cross-border invoice

An agency in Europe bills a US client $4,500. By international wire: $25–50 in bank fees, a 1–3% FX spread depending on the banks involved, and 1–5 business days of waiting — with the occasional compliance hold thrown in. By card: roughly 2.9% plus a cross-border surcharge, call it $150+, plus a months-long chargeback window.

The same invoice in ETH: the client pays from their wallet, gas costs them a few dollars on mainnet or cents on Base, the payment is spendable in about a minute, and it's final — no reversal window. On a non-custodial page the platform takes 0%; the agency keeps the full $4,500 worth of ETH and converts on its own schedule.

handling the volatility question

ETH's price moves, and your invoice shouldn't. The standard pattern is a time-locked quote: price the sale in your currency, convert to ETH at payment time, and lock that exact amount for a short window (crypt.pe locks quotes and matches the exact amount to the invoice). The customer pays a fixed number; you never argue about rate drift.

What you do after settlement is a business decision: hold the ETH, convert a portion to stablecoins, or sweep to cold storage on a schedule. Non-custodial means nobody forces auto-conversion on you — that decision stays yours.

confirmation policy

A good gateway watches the chain and marks the order paid automatically. On crypt.pe, detection is automatic and confirmation depth scales with amount — a $40 payment feels instant, a $9,000 invoice waits for deeper finality before the order flips to paid. You never hand-check a block explorer.

mistakes to avoid

  • Quoting ETH amounts without a locked window. An invoice that says '2.1 ETH' on Monday is a dispute by Friday — always quote fiat and convert at payment time.
  • Confusing ETH with ERC-20 tokens. USDC or USDT on Ethereum are different assets on the same network; make sure your page tracks the asset the customer actually selected.
  • Mainnet-only for small tickets. A $25 payment with $4 gas is a 16% surcharge your customer feels — enable Base or Arbitrum.
  • Receiving into an exchange deposit address. Deposit addresses can be rotated or retired; receive into keys you control.
  • Skipping the test payment. One $2 test on each enabled network validates address, rail and receipt before a client ever pays.

go-live checklist

  • 1. Create or reuse a self-custody EVM wallet; back up the seed on paper.
  • 2. Paste the 0x address into your payment page and enable ETH on mainnet plus at least one L2.
  • 3. Send yourself a small test payment and check the receipt.
  • 4. Put the link on invoices, your site and the printable QR standee.
  • 5. Set a conversion policy — what you hold vs what you stable-out — and a monthly sweep habit to cold storage.

frequently asked

How do I accept Ethereum payments as a business?

Add your public wallet address to a non-custodial payment page, share the link or QR, and payments settle directly to your wallet on Ethereum mainnet, plus cheaper L2s Base and Arbitrum. With crypt.pe there's no KYC to start and 0% platform fees.

Should I accept ETH on mainnet or an L2 like Base?

Both — it's the same ETH and the same 0x address. Mainnet suits large invoices and conservative corporate payers; Base and Arbitrum cost cents instead of dollars in gas, which matters for anything under a few hundred dollars.

How fast do Ethereum payments confirm?

Settlement takes ~15 seconds to 2 minutes, with network fees of a few dollars on mainnet and cents on L2s. A payment gateway applies amount-based confirmation depth automatically.

What happens if the ETH price changes while a customer pays?

Use time-locked quotes: the invoice converts your fiat price to ETH at payment time and locks the exact amount for a short window, so the customer pays a fixed number regardless of drift.

ready to accept crypto?
free page, 0% fees, live in 60 seconds — non-custodial by design.
create your free page
new guides by email
one email when a new merchant guide ships.
no drip sequences, no promos — unsubscribe anytime.
about crypt.pe

Non-custodial by design. Payments settle wallet-to-wallet on-chain, straight from the payer to your own wallet. crypt.pe never holds, freezes or forwards funds — there is no platform balance and no withdrawal step, and every payment gets a verifiable on-chain receipt.

0% transaction fees. Plans are flat subscriptions with a free tier — compare that with the 1–2% charged by custodial processors. One page accepts Bitcoin, USDT, Ethereum, Solana and 24 coins across 13 chains, with simple pricing and no payout schedule.

Tools merchants actually use. Exact-amount invoices with live tracking, product links, printable QR standees, HMAC-signed webhooks, CSV exports and a Stripe-style API — see the merchant guides or create your free page in about a minute.

How a payment works. You add wallet addresses you already own, share your crypt.pe link or QR code, and the customer pays from their own wallet. crypt.pe locks the amount at invoice time, watches the chain, matches the transaction and issues a receipt both sides can verify on a block explorer — software around the payment, never in the money flow.

Available wherever wallet-to-wallet payments are permitted. Because settlement is on-chain to your own wallet, there is no bank partnership gating access and no account that can be closed over geography — local crypto rules still apply. Merchants use crypt.pe across India, the UAE, Nigeria, the Philippines, Brazil and 100+ other markets — see the country guides.

Stablecoin-first, volatility optional. Accept USDT or USDC and a $100 invoice is still worth $100 when it is paid — no price risk in between. Prefer BTC, ETH or SOL? Amounts are locked at invoice time either way, and your dashboard records the USD value of every payment for clean bookkeeping. Questions? Start with the FAQ or payment help.