TRC20 invoices: USDT on TRON, written so it arrives

TRC20 is the TRON token standard, and it is a common network for USDT, with low fees, fast confirmation and wide support on exchanges. It is VegaPal's default crypto network for that reason. This page covers what belongs on a TRC20 invoice and what makes one go wrong.

Try the live invoice generator

What to write on a TRC20 invoice

Write the asset and the network as one phrase — 'USDT on TRON (TRC20)' — directly above the receiving address. Not 'USDT', not 'Tron', not 'TRC-20' in a footnote. The pair is the instruction; either half alone is incomplete.

Then the amount due in USDT, and a line stating that the amount received must equal the amount due so nobody deducts the network fee from your payment. Everything else on the document is an ordinary invoice: number, dates, itemised work, totals, your business details.

Addresses, fees and confirmation

TRON addresses start with T and are 34 characters. They look nothing like an Ethereum address, which is the one small mercy of this ecosystem: a client pasting a TRON address into an ERC20 withdrawal usually gets stopped by their exchange.

Fees on TRON are paid by the sender in TRX, or covered by staked energy, and they are typically small enough that clients do not negotiate over them. On Pro, VegaPal watches your TRC20 address for the exact amount on a USDT invoice and marks it paid after 20 confirmations. On Free, check your own wallet and mark the invoice paid.

Why TRC20 is the sensible default

For an invoice denominated in USDT, the three things that matter to your client are fee, speed and whether their exchange supports the withdrawal. TRON scores well on all three, which is why many exchanges and wallets support it.

That does not make it the only choice. A client whose treasury lives on Ethereum will want ERC20, and one paying from a BNB Smart Chain wallet will want BEP20. Save whichever wallets you can genuinely receive on, and put the matching one on each invoice rather than asking the client to adapt.

A TRC20 invoice in words (fictional)

Halden Systems bills a client for a security review. Tax invoice INV-2026-0146, issued 8 July, due 22 July. One line: 'Application security review and remediation report — 1 × 3,600.00'. Amount due 3,600.00 USDT.

The payment block reads, in order: 'USDT on TRON (TRC20)', then the receiving address on its own line, then 'Amount received must equal 3,600.00 USDT — network fees are paid by the sender.' The public payment page shows the same three things with a QR code and a copy button. When 3,600 USDT appears in Halden's wallet, they file the transaction hash with their copy of the invoice and mark it paid.

TRC20 mistakes worth avoiding

Writing 'USDT' and assuming TRC20. Your client may default to whatever chain their exchange puts first, which is not always TRON.

Reusing a wallet you no longer control, or one belonging to an exchange account you have since closed. Confirm the address is live before it goes on a document.

Accepting a payment net of fees. State the required received amount; it costs one sentence.

Truncating the address for tidiness on the PDF. The whole string or nothing — a client who has to ask for the rest of it will paste something wrong.

Treating a transfer you were told about as one you have seen. On Free, check your own wallet before you update the invoice; on Pro, wait until the invoice turns Paid.

Who this is for

Freelancers paid in stablecoins

Bill in USDT on the network your client's exchange withdraws from by default.

Exporters paid by clients abroad

Offer TRC20 next to the bank details for clients who already hold USDT.

Monthly retainers in USDT

Duplicate last month's invoice; the saved wallet keeps the asset and network unchanged.

How it works

  1. 01

    Save the TRON wallet

    Add the address in payment methods with the asset USDT and the network TRON (TRC20).

  2. 02

    Set the invoice to USDT

    Create the document, itemise the work, and set the currency to USDT with a due date.

  3. 03

    Attach the wallet and state the amount

    Select the saved TRC20 wallet and note that the received amount must match the amount due.

  4. 04

    Share and get confirmed

    Send the payment page or PDF. On Pro, the invoice turns Paid after 20 confirmations once the exact amount arrives, usually within minutes. On Free, check your wallet and mark it paid.

Frequently asked questions

What does TRC20 mean on an invoice?

TRC20 is the token standard on the TRON network. On an invoice it tells your client which chain to send the asset over, which is what decides whether the funds reach a wallet you can actually access.

Is TRC20 the default network in VegaPal?

TRC20 is the default crypto network, because it is widely supported for USDT and VegaPal Pro confirms USDT payments on it automatically, as it does on Ethereum (ERC20) and Polygon. You can save and select other assets and networks per invoice.

Who pays the TRON network fee?

The sender. It is worth stating on the invoice that the amount you receive must equal the amount due, so the fee is not deducted from your payment.

Does VegaPal verify that a TRC20 payment arrived?

On Pro, yes, for invoices priced in USDT. VegaPal reads the public TRON blockchain, matches the exact amount (4 decimals) sent to your address and marks the invoice paid after 20 confirmations. Any other amount waits for you to confirm it. On Free, you check your wallet and set the status yourself.

Create your next document with VegaPal

The free plan includes 3 documents per month, with PDF downloads and shareable payment pages.