Ethereum · ERC-20

ERC-20 USDT and USDC payment gateway

Ethereum is where many businesses and larger holders keep their stablecoins. Payaries gives each invoice its own Ethereum deposit address and tracks the payment from detection to a withdrawable balance.

Updated · 2 min read

01How to integrate

Create an invoice with USDT_ERC20 or USDC_ERC20 on eth-mainnet. The response carries a one-time deposit address, the amount due and the confirmations required.

Request
POST /v1/invoices

{
  "referenceId": "order_10231",
  "fiat": { "amount": "1200.00", "currency": "USD" },
  "crypto": { "asset": "USDC_ERC20", "chainId": "eth-mainnet" }
}

02Assets on Ethereum

ETH, USDT, USDC, DAI, WBTC, SHIB and PEPE, with deposits and withdrawals both supported. GET /v1/chains has the live list.

03When Ethereum makes sense

Network fees are set by the network and are typically higher on Ethereum mainnet than on Tron, BNB Smart Chain, Polygon or Arbitrum. That makes it a better fit for larger payments, where the fee is a small share of the amount, or for customers who already hold their balance there. For small baskets, offer a cheaper network alongside it — the comparison goes through the trade-offs.

04Confirmation, settlement and gas

  • The invoice moves pending → detected → confirming → confirmed; your ledger is credited and a signed webhook fires. See crypto payment confirmations.
  • The deposit is swept to your Ethereum wallet before it becomes withdrawable.
  • Moving a token costs ETH. Where the gas station covers Ethereum you hold none; otherwise keep ETH in your wallet. Read gasSponsored on the wallet — see network fees and the gas station.

Questions

Which tokens can I accept on Ethereum?
ETH, USDT, USDC, DAI, WBTC, SHIB and PEPE. Deposits and withdrawals are both supported. The live list is always available from GET /v1/chains.
Why offer another network too?
Ethereum mainnet fees are typically higher than on the other supported networks, so a small payment can lose a noticeable share to the fee. Offering a cheaper network alongside it lets the customer choose.
Which asset ID do I use for USDT on Ethereum?
USDT_ERC20 with chainId eth-mainnet.

Next

Run a real invoice before you commit

Test keys work immediately, with no approval step. Payaries runs on real mainnet networks, so use a small real payment to test.