# Accept TRON (TRX) payments

> Accept TRON (TRX) with CryptoLike: a fresh T-address per payment, a hosted payment page, credit after confirmations and a signed webhook to your server.

Source: https://cryptolike.net/coins/tron
Updated: 2026-09-25

CryptoLike credits a TRX payment to your balance after 19 confirmations of the TRON network and reports it to your server with a signed webhook. You create the payment; the payer sends TRX from their own wallet to a fresh address; CryptoLike watches the address, counts confirmations and moves the status from `pending` to `paid`.

## How a TRX payment works

A TRX payment in CryptoLike goes through four steps and three statuses: `new`, `pending` and `paid`. The payment page, the API and the webhooks show the same status string, so your order logic reads one field. The payer needs no account with CryptoLike, only a TRON wallet with enough TRX for the amount and the network fee.

1. **You create the payment** with `POST /v1/invoices`, the [OpenCart extension](https://cryptolike.net/integrations/opencart), the [Хорошоп connector](https://cryptolike.net/integrations/horoshop) or a [payment link](https://cryptolike.net/use-cases/payment-links). Status: `new`.
2. **The payer sees what to send:** the exact TRX amount, the network (TRON), the address with a QR code and the time left.
3. **The transfer is detected.** Status: `pending`, "Payment detected. Waiting for confirmation."
4. **The payment is confirmed.** After 19 confirmations the status is `paid`, the funds are on your balance and a signed `invoice.paid` [webhook](https://cryptolike.net/docs/webhooks) arrives.

## What the payer should know about TRON

CryptoLike gives every TRX payment its own TRON address that starts with `T` and is never reused. A TRX transfer consumes bandwidth; when the sending account has none left, the network burns TRX for it, so the payer keeps a little TRX on top of the amount. CryptoLike detects a direct TRX transfer; TRX moved by a smart contract is not detected automatically.

- **Address.** 34 characters, starts with `T`.
- **Network fee.** Paid by the sender in TRX. Payment addresses are new, so the first transfer to one also carries the TRON account-activation fee in TRX; the wallet shows the total before sending.
- **Only TRX counts.** A TRX payment is paid in TRX. USDT and other TRON tokens do not count toward it.
- **Exact amount.** If an exchange deducts its withdrawal fee, the payment arrives short and becomes `underpaid`. Send the difference to the same address before the time runs out.
- **Network.** Send TRX on the TRON network only. Funds sent on another network never reach the payment and cannot be recovered.

## Create a TRX payment

To create a TRX payment in CryptoLike, take the `id` of the asset with `ticker` TRX and `network` tron from `GET /v1/currencies` and pass it as `coin_id` to `POST /v1/invoices`. Price it in USD, as in the example, or in TRX; a fiat amount is converted at the current rate and the rate is locked for the payment's time limit.

```bash
COIN_ID=$(curl -s https://api.cryptolike.net/v1/currencies \
  | jq -r '.currencies[] | select(.ticker=="TRX" and .network=="tron") | .id')

BODY='{"amount":"15.00","currency":"USD","coin_id":"'"$COIN_ID"'","order_id":"A-1006"}'
curl -s https://api.cryptolike.net/v1/invoices \
  -H "Content-Type: application/json" -H "Idempotency-Key: order-A-1006" \
  -H "X-API-Key: $KEY_ID" -H "X-Timestamp: $TS" -H "X-Signature: $SIG" -d "$BODY"
```

The response carries `address`, `payer_amount` and `checkout_url`: send the payer there. Signing: [API authentication](https://cryptolike.net/docs/auth); every field: [API reference](https://cryptolike.net/docs/api).

## FAQ

### How many confirmations does a TRX payment need?

CryptoLike credits TRX after 19 confirmations of the TRON network. The threshold is set per asset, returned in `GET /v1/currencies` and shown to the payer as progress. More on [confirmations](https://cryptolike.net/glossary/confirmations).

### What if the payer sends USDT instead of TRX?

USDT does not count toward a TRX payment, so the status does not move; if it has already been sent, contact support with the transaction id. Next time, create the payment for [USDT (TRC20)](https://cryptolike.net/coins/usdt-trc20), or with `currency: "USD"` and no `coin_id`, and the payer chooses the asset on the payment page.

### What if the payer sends TRX on another network?

The transfer does not reach this payment and cannot be recovered: a TRX payment watches a TRON address only. If the time has run out, create a new payment.

### Can I price in USD?

Yes. Send `currency: "USD"` with the TRX `coin_id`: CryptoLike converts at the current rate and locks it for the payment's time limit. If no fresh rate is available, the API answers `503`: retry, or price the payment in TRX.

### How do TRX payouts work?

`POST /v1/withdrawals` with `coin_id`, `amount`, `to_address` and your `payout_id`, or a CSV of up to 1,000 rows in the cabinet ([mass payouts](https://cryptolike.net/use-cases/mass-payouts)). `POST /v1/withdrawals/estimate` first shows the platform fee, the reserved network fee and the total debit. Payouts require a verified account; fees are on the [pricing page](https://cryptolike.net/pricing).
