USDT (TRC-20) is one of the cheapest, fastest ways for a business to get paid in crypto — but the moment you move or settle those funds, TRON fees can eat your margin. This merchant guide shows how to accept USDT (TRC-20) payments and keep settlement cheap using rented energy.
Receiving is cheap — settling is where fees hit
Getting paid in USDT costs you nothing. The cost appears when you send: forwarding takings to treasury, paying suppliers, or sweeping wallets. Each of those USDT (TRC-20) sends needs energy (~65,000 per transfer), and without it the network burns your TRX — several dollars a time.
The arithmetic is fixed and easy to check. Since TRON Proposal #104 took effect on 29 August 2025, the burn rate is 100 sun per unit of energy, and 1 TRX = 1,000,000 sun. So a normal USDT transfer that consumes 65,000 energy burns 6.5 TRX if the sending wallet has no energy. A transfer to an address that has never held USDT before costs roughly double — around 130,000 energy, or 13 TRX burned — because the contract has to create a new balance slot for that address rather than update an existing one.
What sweeping actually costs you per month
Multiply that by your sweep frequency and the number is no longer a rounding error:
| Sweeps / settlements | Energy needed | Burned TRX (100 sun) | Rented at 30 sun | Rented at 10 sun |
|---|---|---|---|---|
| 100 | 6,500,000 | 650 TRX | 195 TRX | 65 TRX |
| 500 | 32,500,000 | 3,250 TRX | 975 TRX | 325 TRX |
| 1,000 | 65,000,000 | 6,500 TRX | 1,950 TRX | 650 TRX |
The burn column is fixed by the protocol. The rental columns are illustrative: energy on TronSave is priced by an order book in sun per unit of energy, so your real cost is simply energy × unit price ÷ 1,000,000 TRX. Check the live number on the TronSave market before you budget — do not assume a price from a table you read once.
Keep settlement cheap
- Rent energy on the TronSave market before you sweep or forward funds — delivered in seconds, typically 60–80% cheaper than burning TRX.
- High volume? Turn on Auto-Buy so your settlement wallet is always topped up, or buy energy in bulk for end-of-day batches.
Two details before your first order. The minimum energy purchase is 64,000 units, set just under the cost of one USDT transfer so no order is too small to be useful. And every rental has a duration: 15 minutes, 1 hour, 3 hours, or 1 to 30 days, defaulting to 3 days. When it ends the delegation is reclaimed automatically — if your batch is still running, the Extend feature pushes the expiry out instead of forcing a fresh order.
Using a fresh wallet per order?
If you generate a new TRON address per customer or invoice, remember each one must be activated before it can send, and its first outward USDT transfer still needs energy. Budget for that when you sweep.
Address-per-customer is the cleanest reconciliation model on TRON — the receiving address is the invoice reference, so you never match on memo fields or amounts. The trade-off is the sweep: every one of those addresses is a separate wallet needing its own energy, so your energy budget scales with the number of addresses, not the value collected. The alternative is one static address per sales channel, reconciled on amount plus timestamp — cheaper to sweep, harder to attribute.
On confirmations: TRON blocks are produced roughly every 3 seconds, and a payment is only settled once its transaction is included and confirmed. Never release goods off an unconfirmed hash a customer pastes into a chat — watch your own address for the incoming transfer instead.
Refunds and chargebacks
There are none — and that cuts both ways. TRON transfers are final, so you will never eat a card chargeback, but a refund is a fresh outbound USDT transfer that costs you energy exactly like a sweep does. If you offer refunds, add them to your energy budget as ordinary outbound sends. And if the customer’s refund address has never held USDT, that refund is a 130,000-energy transfer, not a 65,000 one.
When a settlement fails: OUT_OF_ENERGY
The failure you will eventually meet is a transaction that reverts with OUT_OF_ENERGY. It means the sending wallet did not have enough energy and not enough TRX to burn for the shortfall. The transfer does not go through, but the fee consumed up to the point of failure is gone — you pay and get nothing.
The nastier version is the half-funded batch. If you rent energy for 20 sweeps and the nineteenth address turns out to be a first-time USDT recipient needing 130,000 instead of 65,000, you run out mid-run: some transfers land, some fail, and your books now disagree with the chain. Avoid it two ways. First, size energy against the worst case, not the average — count how many destinations are fresh addresses and budget 130,000 for each. Second, keep Auto-Buy armed as a backstop: it watches the target address’s on-chain energy and fires a new order whenever the balance drops below a threshold you set. If a run does fail partway, this walkthrough of out-of-energy failures covers the recovery.
Scale it with automation
For a storefront or PSP, wire energy into your settlement pipeline with the TronSave SDK or API — rent exactly what each payout needs, right before it sends, with no manual steps.
Official SDKs exist for TypeScript, Python, Rust, Java and PHP against the v2 API at api.tronsave.io. The production pattern is two calls: estimate, then buy. Estimating returns the unit price, the duration and the TRX cost, so your settlement job can refuse to proceed when the market is above the ceiling you set instead of silently overspending on a thin order book. Nile testnet mirrors the same paths at api-dev.tronsave.io — rehearse there before touching mainnet funds.
A simple merchant wallet
Want a non-custodial wallet for a small shop or freelance business that keeps USDT fees low automatically? SaveWallet auto-optimizes energy on every send, so your settlements stay cheap without any setup.
Steps to start
- Share your TRON address / QR to receive USDT (TRC-20).
- Count your outbound sends and classify each destination: existing USDT holder (~65,000 energy) or first-time recipient (~130,000).
- Before settling, rent the energy your sends need (or enable Auto-Buy) — pick a duration that comfortably covers the whole settlement window.
- Confirm the energy has landed on the sending address before you fire the batch. Delegation is typically visible within seconds.
- Sweep or forward funds — each transfer uses rented energy instead of burning TRX.
- Reconcile: check every transaction hash succeeded, not just that it broadcast.
FAQ
Does accepting USDT cost me anything?
No — receiving is free. Fees only apply when you send/settle, and energy keeps those low.
Is a payment processor required?
No. You can accept directly to a wallet; energy handling is what keeps settlement cheap at any scale.
Is it non-custodial?
Yes — you hold your keys and funds; TronSave only delegates energy.
How much TRX should I keep in the settlement wallet?
Enough for bandwidth, plus a small buffer. Energy covers the contract execution, but every transaction also consumes bandwidth, and a wallet with neither free bandwidth nor TRX cannot broadcast at all. Keep a few TRX so a batch never stalls on the cheapest resource. See how much TRX a USDT send needs.
Can I rent energy for an address I do not control?
Yes — energy is delegated to a target address you nominate, and the recipient needs no TronSave account. That is how a PSP covers energy for merchant wallets it holds no keys for.
Protect your margin: rent cheap settlement energy on the TronSave energy market.
