What TRC-20 is
A token standard is a common interface that a smart contract implements so that wallets, exchanges, and other contracts all know how to interact with the token without special-casing it. "Fungible" means every unit is interchangeable: one TRC-20 USDT is identical in value and function to any other, the way one dollar is the same as the next. TRC-20 is Tron's version of that interface, and it is closely modeled on Ethereum's ERC-20 — the two define the same core operations (check a balance, transfer an amount, approve a spender), which is why the standards feel familiar across chains.
A TRC-20 token is not the native coin of the Tron network. The native coin is TRX, and it is what pays the cost of moving anything on Tron. TRC-20 tokens are separate assets that live in their own smart contracts on top of that network — USDT is one such contract, and there are many others. So a wallet on Tron can hold TRX and a set of TRC-20 tokens at the same time, as distinct balances.
TRC-20 describes the standard, not a specific token. The same standard underlies every fungible token issued on Tron, just as ERC-20 underlies a vast range of tokens on Ethereum. When people say "send it as TRC-20," they are naming the network and token type the transfer should use — almost always for USDT.
What it means in a crypto payment
TRC-20 matters in payments mostly because of fees and habit. Sending a TRC-20 transfer on Tron has historically cost very little compared with the same stablecoin transfer on Ethereum, which made Tron the default rail for moving USDT in everyday amounts. For a payer sending a modest sum, the network fee on Tron is small enough to be an afterthought, where the same payment on a congested chain could carry a meaningful cost.
That low cost is why a large share of stablecoin payment volume runs over TRC-20. When a customer is asked which network to pay on, Tron is a frequent answer precisely because the fee does not eat into a small payment. The trade-off is that the token only exists on Tron in this form — TRC-20 USDT is not the same on-chain object as USDT on Ethereum or Solana, even though every version represents the same dollar of value.
TRC-20 on halfin
halfin supports Tron, and accepting TRC-20 USDT is one of the most common ways customers pay. There is a gate for Tron; a TRC-20 token on a network halfin does not support cannot be accepted, because the gate is specific to the chain it watches. When a customer chooses to pay on Tron, the deposit address and the amount shown are for a TRC-20 transfer, and the credit lands as a dollar-anchored balance.
Because invoices are anchored to fiat, billing in USDT over TRC-20 does not ask you to reason about the network: you quote a USD amount, halfin maps it to the payable figure using the live rate, and locks that figure when the invoice activates. The payer sees a concrete amount to send and the Tron network to send it on. Crediting is reorg-aware and waits for Tron's confirmation threshold before the invoice is marked paid. A balance received over TRC-20 can later be paid out, refunded, or rebalanced into another asset through balance conversion — which is asset-to-asset, not a way to move funds to a bank account.