
ETH Checkout Operations: Pricing, Gas, and Confirmations
Accepting ETH is not the same as posting an Ethereum address and waiting for transfers. A business payment needs a price, an exact payment request, an expiration rule, confirmation handling, an order reference, and a reliable action after payment.
Yolfi provides crypto payment links, subscriptions, payment events, webhooks, and direct non-custodial wallet settlement for supported asset-and-network combinations. ETH on Ethereum should be offered only if that exact combination appears in the merchant's authenticated live setup; a public coin or network page by itself is not proof that settlement is enabled.
This guide covers the operational choices behind an ETH checkout: when to price in ETH, when to use an Ethereum-network stablecoin instead, how to handle gas and exchange-rate movement, and what your application should do before and after confirmation.
What does it mean to accept Ethereum payments?
Ethereum is a blockchain network. ETH is its native asset: it is used to pay transaction fees and can also be transferred as payment. Ethereum also carries tokens, including stablecoins such as USDC and USDT. Ethereum.org provides a broader introduction to the network in What is Ethereum?.
For Yolfi context, see the Ethereum network overview and ETH asset page. These public pages describe the network and asset; they do not prove that ETH settlement is enabled for a particular merchant account.
A customer paying with ETH usually follows this path:
- Your checkout creates a payment request tied to an order or customer.
- The request shows ETH, the Ethereum network, the receiving address, the exact amount, and an expiration time where applicable.
- The customer approves the transaction in a compatible wallet.
- The transaction is submitted to Ethereum and begins pending.
- Your payment system detects the transfer and waits for the required confirmation state.
- A verified payment event tells your application to fulfil the order, update an invoice, or extend access.
That final step matters. A transaction hash identifies a transaction, but seeing a hash alone does not prove that it was broadcast, confirmed, or matched to the correct order.
ETH or an Ethereum stablecoin?
ETH and stablecoins can use the same network, but they solve different pricing problems.
| Question | ETH | Stablecoin on Ethereum |
|---|---|---|
| What is transferred? | Ethereum's native asset | A token contract balance, such as USDC or USDT |
| Does the market value move? | Yes | Designed to track a reference currency, commonly USD |
| Who pays gas? | The sender pays gas in ETH | The sender still needs ETH for gas |
| Best fit | Crypto-native buyers, ETH-denominated products, optional wallet payment | Fiat-priced invoices, plans, and products that need a steadier quoted amount |
| Main operational issue | Exchange-rate movement during checkout | Exact token contract and network must be clear |
Offer ETH when customers already hold it or when the product is naturally priced in ETH. If a product has a fixed dollar price, an Ethereum-network stablecoin may be easier for the customer and the finance team because the token amount does not need to follow ETH's market price.
Do not describe a stablecoin payment as an ETH payment merely because it runs on Ethereum. “Pay 0.02 ETH on Ethereum” and “Pay 50 USDC on Ethereum” are different payment methods. The second uses a token contract, and the customer still needs some ETH to pay the network fee.
For stablecoin-specific setup, see the guides to accepting USDC payments and accepting USDT payments.
When accepting ETH makes sense
ETH can be a useful additional payment option when:
- customers already use Ethereum wallets;
- a product serves developers, crypto companies, collectors, traders, or other Ethereum-native buyers;
- a customer asks to settle an invoice from an ETH balance;
- a business wants payments delivered directly to its configured wallet;
- the product or service is intentionally priced in ETH;
- confirmed payments need to trigger delivery or account access.
It is a weaker default for a small fiat-priced purchase when the buyer does not already own ETH. The customer would need to acquire ETH, manage a wallet, and pay a network fee. Keep card or bank payment options where those methods fit the audience better.
ETH can also sit beside stablecoins. Let customer demand determine which methods appear rather than presenting every possible asset by default.
Choose the pricing model before building checkout
An ETH payment request needs one clear source of truth for price.
Fixed ETH price
A fixed ETH price works when the seller thinks in ETH. A product might cost a stated amount of ETH regardless of its fiat value at payment time.
This model is simple on the payment page, but the business accepts the market risk. Revenue measured in local currency can move between pricing, payment, and later conversion.
Fiat price converted to ETH
A fiat-denominated product can calculate the required ETH amount when checkout begins. The request should then show:
- the fiat reference price;
- the exact ETH amount to send;
- the rate or quote used, if shown by the checkout;
- when the quote expires;
- what happens if payment arrives late or with a different amount.
Do not keep a volatile quote open indefinitely. A customer who pays an old ETH amount after the market moves may underpay or overpay relative to the current price.
Stablecoin price on Ethereum
For a product already priced in dollars, a supported stablecoin on Ethereum can remove most of the ETH conversion problem. It does not remove network fees, confirmation handling, or token verification. The payment request still needs the exact asset, token contract as recognized by the payment system, network, amount, address, and status.
Account for Ethereum gas fees
Gas is the fee paid for computation and transaction processing on Ethereum. The sender pays it in ETH, and the fee can change with network demand. Ethereum.org's gas documentation explains gas limits, base fees, priority fees, and why a wallet's final fee depends on the transaction and current conditions.
For merchants, four rules prevent confusion:
- Keep gas separate from the purchase amount. If the payment request is for 0.05 ETH, the merchant should receive 0.05 ETH; the wallet needs additional ETH to pay gas.
- Do not promise a fixed network fee. Show the wallet's current estimate or tell the customer that Ethereum network fees apply.
- Check small-ticket economics. A payment can be technically valid but unattractive if gas is large relative to the purchase.
- Do not subtract gas from a refund without a published rule. State whether the business or customer bears the fee for a separate refund transaction.
A token transfer generally uses more gas than a basic ETH transfer because it calls a token contract. Avoid publishing a permanent fee comparison: actual fees depend on the transaction and network conditions.
Ethereum mainnet and other networks
“ETH” can appear in wallets on Ethereum mainnet and on other networks. Similar address formats do not make those networks interchangeable. A transaction sent on another network is not an Ethereum mainnet payment simply because the asset is labeled ETH or the destination begins with 0x.
Use Ethereum mainnet when that is the exact option selected in the live checkout. Consider another network only if all three conditions are true:
- it appears as a supported option in your live Yolfi setup;
- your settlement wallet is configured and tested for that network;
- your customers actually use it.
Do not infer support from a wallet, an address format, or a token listing. Publish only the asset-and-network combinations shown in the live payment flow. The merchant playbook for preventing wrong-network crypto payments covers checkout labels, incident evidence, and replacement requests in more detail.
How to prepare an ETH payment flow with Yolfi
1. Confirm availability before configuring a wallet
Open the authenticated settlement configuration and check whether ETH on Ethereum is actually offered to your account. If it is absent, do not publish ETH as a payment option or ask customers to send funds. Use a currently supported asset-and-network combination instead.
For supported combinations, Yolfi uses a non-custodial model: payments go from the customer to the merchant's configured wallet rather than into a balance held by Yolfi. This reduces a custody step, but it also makes wallet security, address ownership, and reconciliation the merchant's responsibility. If ETH on Ethereum becomes available, add only an Ethereum settlement address that the business controls and verify it character for character.
2. Choose ETH and the exact network shown
Select ETH on Ethereum only when that combination is available in the authenticated live setup. If Yolfi presents additional network choices, treat each as a separate payment route with its own testing, customer instructions, and settlement records.
The payment page should say “ETH on Ethereum,” not only “crypto” or “send ETH here.” Repeat the network at the point where the customer approves the transaction.
3. Set the amount and expiration policy
For an ETH-denominated product, set the exact ETH amount. For a fiat-priced product, let checkout calculate a quoted ETH amount and define how long that quote remains valid.
Decide in advance how the system handles:
- a transaction submitted before expiry but confirmed after it;
- a payment sent after expiry;
- an amount below the request;
- an amount above the request;
- two transactions sent for one order.
Do not resolve these cases by silently changing order history. Put mismatches into review or issue a new payment request according to a documented policy.
4. Create a payment link or connect checkout
A crypto payment link is the quickest structured route for an invoice, service package, digital product, or customer who asks to pay by ETH. It gives the transfer an amount and business context without requiring a custom integration.
A self-service product should connect checkout to its own order and customer records. Preserve identifiers such as:
- customer or account ID;
- order or invoice ID;
- product and plan;
- fiat reference price and quoted ETH amount;
- quote creation and expiration time;
- selected asset and network.
These fields make support and accounting possible without guessing from wallet activity.
5. Wait for the required confirmation state
Ethereum transactions pass through states. They may remain pending, be replaced, fail, or be included in a block. The Ethereum transaction documentation explains transaction fields, fees, nonces, signatures, and how transactions are included.
Set a confirmation policy appropriate to the order's value and risk. Do not state that every business needs the same fixed number of confirmations. Instead, use the confirmed status produced by the payment flow and apply any additional policy your business requires.
Never fulfil from a wallet screenshot, a browser return page, or a hash alone. Match the transaction to the requested network, asset, destination, exact amount, order, and confirmation state.
6. Process payment events idempotently
When ETH on Ethereum is supported and enabled, use Yolfi payment events or webhooks to connect confirmation to the application. A confirmed event can:
- mark an invoice paid;
- deliver a download or licence;
- add credits;
- activate an account;
- extend a paid period;
- notify finance or support.
Webhook processing must be idempotent: receiving the same event more than once must not deliver twice or extend a subscription twice. Store the payment reference and transaction identifier, verify the event through the integration's documented method, return a successful response only after durable processing, and retry internal work safely when needed.
Payment links or an integrated checkout?
Choose the smallest setup that provides enough control.
| Use case | Better starting point | Why |
|---|---|---|
| Consulting invoice | Payment link | Easy to send in the existing customer conversation |
| One-off digital product | Payment link or checkout | Depends on whether delivery is manual or automatic |
| SaaS upgrade | Integrated checkout | Needs account, plan, and access updates |
| API credits | Integrated checkout | Confirmation should update a balance exactly once |
| Custom annual contract | Payment link | Sales can attach a clear invoice reference |
| Recurring membership | Subscription flow | Needs renewal status and access rules |
A plain wallet address is not a payment link. It lacks a unique request, exact current price, expiry, order reference, and customer-facing status.
ETH subscriptions need a pricing rule
Yolfi provides crypto subscriptions for supported payment combinations. Do not assume that this automatically includes ETH on Ethereum. If that combination appears in the authenticated live setup, decide whether the plan itself is denominated in ETH or in fiat before offering it.
A fixed-ETH plan keeps the token amount stable while its fiat value moves. A fiat-priced plan needs a fresh ETH quote for each charge or payment request. An Ethereum stablecoin can be easier when the business wants the nominal charge to remain close to a fiat price.
Your product still owns the access rules. Define:
- when access begins;
- what payment state extends the paid period;
- how long the customer has to resolve a pending or failed renewal;
- whether there is a grace period;
- what cancellation changes;
- how duplicate or late payments are handled.
A payment event reports financial state. It should not replace the product's subscription state machine.
Refunds and accounting
A confirmed Ethereum payment is not reversed through a card-network chargeback. A merchant can still refund a customer by sending a separate transaction under its refund policy.
Before issuing a refund:
- verify the original order and confirmed transaction;
- verify the approved refund amount and asset;
- obtain and verify the refund address under a documented process;
- state how network fees are handled;
- require appropriate internal approval;
- record the refund transaction separately from the original receipt.
Do not automatically refund to an address pasted into an unexpected message. The payer, account owner, and proposed destination may not be the same party.
For each payment, retain the order reference, customer, asset, network, crypto amount, fiat reference value and timestamp used by the business, settlement address, transaction identifier, confirmation status, fees recorded by your business, and any later refund. Accounting and tax treatment varies by jurisdiction, so confirm the required valuation and reporting method with a qualified adviser.
Common mistakes when accepting ETH
Publishing only a wallet address
An address does not tell the customer the current amount, network, expiry, or order reference. Use a payment request that connects the transfer to the purchase.
Treating ETH and Ethereum as synonyms
Ethereum is the network; ETH is the native asset. Stablecoins and other tokens can also move on Ethereum. Name both the asset and network in customer instructions.
Ignoring gas volatility
The merchant's price and the customer's gas fee are separate. Do not advertise a permanent fee or assume the same fee for ETH and token transfers.
Leaving an ETH quote open too long
A stale quote creates avoidable underpayments and overpayments. Use an explicit expiration rule and issue a fresh request when needed.
Fulfilling from the return page
The browser can return before a valid payment is confirmed. Fulfil only after verified payment status or a verified webhook matches the request.
Hard-coding one confirmation rule everywhere
Confirmation policy should reflect transaction state, order value, and risk. Keep high-risk fulfilment decisions separate from the mere appearance of a hash.
Assuming every 0x transfer uses Ethereum mainnet
Several networks use Ethereum-style addresses. Accept only the network selected in the live payment flow and verify the transaction on that network.
Forgetting refund and bookkeeping procedures
Direct wallet settlement does not eliminate support or accounting work. Define address verification, approvals, network-fee treatment, valuation records, and reconciliation before volume grows.
FAQ
How can I accept Ethereum payments on my website?
First verify that ETH on Ethereum appears in your authenticated live Yolfi setup. If it does, configure a settlement wallet and create a payment link or integrated checkout. Show the exact amount and expiry, then use confirmed payment status or a verified webhook before fulfilling the order. If it does not appear, choose a supported combination rather than accepting an unmanaged transfer.
Can I accept ETH payments without KYC?
Do not infer the answer from a public ETH page. Check the current onboarding and authenticated setup requirements for the payment combination available to your account. Your business may also have its own legal, tax, customer-verification, or reporting obligations depending on its activity and jurisdiction.
Do customers pay Ethereum gas fees?
The sending wallet pays the Ethereum network fee in ETH. Keep that gas fee separate from the purchase amount. The estimate can change with network demand and the type of transaction.
Should I price products in ETH or fiat?
Use a fixed ETH price when the product is intentionally ETH-denominated and the business accepts exchange-rate movement. For fiat-priced goods, create a time-limited ETH quote or offer a supported stablecoin where that better matches the pricing model.
How many confirmations should an ETH payment have?
There is no single number that fits every merchant and order. Use the payment system's confirmed status and a written risk policy based on the transaction state, value, and fulfilment risk. Do not treat submission or a transaction hash as confirmation.
Can I accept USDC or USDT on Ethereum instead of ETH?
Yes, when the exact stablecoin and Ethereum combination is offered in your live Yolfi setup. Stablecoins suit fiat-priced products, but customers still need ETH for gas and must use the correct token and network.
Can I accept ETH on networks other than Ethereum mainnet?
Only enable another network when it appears in your live Yolfi setup, your settlement wallet is correctly configured for it, and your customers use it. Do not assume support from an address format or wallet label.
Are ETH payments refundable?
A confirmed payment is not reversed like a card chargeback. The merchant can issue a separate transaction under its refund policy after verifying the order, amount, asset, destination, approval, and network-fee treatment.
Can Yolfi hold or convert my ETH?
For supported payment combinations, the documented model is direct, non-custodial settlement: customer payments go to the merchant's configured wallet. Do not build a process that assumes Yolfi holds, converts, or later pays out ETH, and do not assume ETH support unless it appears in the authenticated setup.
Conclusion
To accept Ethereum payments reliably, treat checkout as a payment system rather than a wallet-address page. Choose ETH or an Ethereum stablecoin according to the pricing model, keep gas separate from the purchase amount, expire volatile quotes, show the exact network, and wait for confirmed payment data.
If ETH on Ethereum appears in the authenticated live Yolfi setup, start with one product and one payment route. Test the exact amount, expiry, wallet transaction, confirmation, webhook, fulfilment, reconciliation, and refund procedure. Add subscriptions or more network options only after that path works and customer demand justifies the added complexity. If the combination is unavailable, do not improvise with a bare wallet address.


