01USDT and USDC networks
| Asset | Network | Standard | Asset ID in the API |
|---|---|---|---|
| USDT | Ethereum | ERC-20 | USDT_ERC20 |
| USDT | BNB Smart Chain | BEP-20 | USDT_BEP20 |
| USDT | Tron | TRC-20 | USDT_TRC20 |
| USDC | Ethereum | ERC-20 | USDC_ERC20 |
| USDC | BNB Smart Chain | BEP-20 | USDC_BEP20 |
| USDT | Polygon | ERC-20 compatible | USDT_POLYGON |
| USDC | Polygon | ERC-20 compatible | USDC_POLYGON |
| USDT | Arbitrum | ERC-20 | USDT_ARBITRUM |
| USDC | Arbitrum | ERC-20 | USDC_ARBITRUM |
Each of these is a separate asset on a separate network, and the table grows as networks are added — GET /v1/chains has the live list. You choose the one an invoice accepts when you create it, and the deposit address you return to the customer is valid for that network only.
02How a USDT payment works
- 01Your backend calls
POST /v1/invoiceswith a fiat amount, for example 49.99 USD, andcrypto: { asset: "USDT_TRC20", chainId: "tron-mainnet" }. - 02Payaries returns a one-time deposit address and locks the conversion rate for that invoice.
- 03The customer sends USDT to the address. The invoice moves
pending→detected→confirming. - 04When the required number of confirmations is reached the invoice becomes
confirmed, your ledger is credited, and aninvoice.status_changedwebhook fires. - 05Payaries sweeps the deposit to your own wallet on that network; once it settles, the amount is withdrawable.
The mechanics are described step by step in how a crypto payment gateway works.
03Gas: what to budget for
A token transfer needs the network's native currency for gas. Sweeping a USDT deposit and withdrawing USDT both pay that gas from your own wallet on the network, so keep a little of the network's native currency (ETH, BNB, POL or TRX) there alongside your stablecoin balance — unless Payaries's gas station covers that network, in which case the gas is recovered as a network fee inside the transaction and you hold none. Payaries doesn't top it up for you, and a withdrawal that can't pay its gas is retried and then fails, releasing the reserved balance.
Your dashboard shows each wallet's native balance and warns when it is empty.
04Wrong amounts and late payments
A short payment is flagged underpaid with the shortfall shown, so you can refund or ask for the balance. A payment mined after the invoice expires is held for review and either refunded or settled, rather than credited automatically. Money that doesn't fit an invoice is recorded as an unclaimed deposit rather than dropped. See handling underpaid and late payments.
05Good to know
- Each merchant has a dedicated wallet per network, never pooled with other merchants, and you can check its live on-chain balance on a block explorer. Payaries holds the wallet for you.
- You can withdraw to any address on demand. Bitcoin withdrawals aren't supported yet, but every USDT network we support is.
- Fees are configured per merchant, optionally by network, asset or amount — ask sales@payaries.com for a quote.
- Crypto transactions are irreversible once confirmed, and the network's own fees are separate from Payaries's.
Questions
- Which USDT networks can I accept with Payaries?
- USDT on Ethereum (ERC-20), BNB Smart Chain (BEP-20), Polygon, Arbitrum and Tron (TRC-20), with more networks being added. USDC is supported on Ethereum, BNB Smart Chain, Polygon and Arbitrum. Call GET /v1/chains for the live list.
- Can I price an order in dollars and be paid in USDT?
- Yes. You create the invoice with a fiat amount and a currency; Payaries converts it at creation and locks the rate for that invoice, so the amount due doesn't move while the customer pays.
- Do I need ETH, BNB, POL or TRX to accept or withdraw USDT?
- Where Payaries's gas station doesn't cover the network, you need a small balance of its native currency in your own wallet to pay gas for sweeping and withdrawing tokens; it isn't topped up automatically. Where the station covers it, gas is recovered as a network fee inside the transaction and you hold none.
- Can I withdraw USDT to any address?
- Yes. Withdrawals on every supported network except Bitcoin go to any valid address for that network, on demand.
Keep reading
- A crypto payment API that behaves like the rest of your stackA REST crypto payment API: create an invoice, get a one-time deposit address, receive signed webhooks and withdraw on demand. HMAC-signed and idempotent.
- Custom token payments: bring your own ERC-20, BEP-20 or TRC-20 tokenRequest your own ERC-20, BEP-20 or TRC-20 token on your Payaries account. How review works, and how invoices, fees and withdrawals work once it is approved.
- Crypto payment confirmations, explained for merchantsHow blockchain confirmations work for merchants: what each invoice status means, when a payment counts as paid, and credited vs withdrawable.
- Managed vs self-held crypto payment gatewaysWhat managed and self-held payment gateways mean for control, speed and risk — and what to ask any provider about where your funds sit.
- How a crypto payment gateway works, from invoice to settlementHow a crypto payment gateway works, step by step: invoices, one-time deposit addresses, confirmations, settlement and withdrawals.
- A crypto payment gateway for forex brokers and trading firmsAccept USDT and other supported crypto for client deposits with a one-time address per deposit, signed webhooks to credit accounts, and on-demand withdrawals. An API for brokers and trading firms.
- A crypto payment gateway for Web3 companiesTake stablecoin and native-coin payments for your Web3 product through one API: dedicated wallets per network, signed webhooks, custom-token requests and on-demand withdrawals.