One-off purchase or an account balance
Register a merchant account and open Deposit in the console to find your dedicated TRON Mainnet address. Send only native TRX, at least 10 TRX per transfer; smaller transfers are not credited. API access and console purchases unlock when cumulative credited funds reach 20 TRX. Depositing adds balance and does not create an Energy order. Your available balance must cover each order.
Minimum 65K: quote the exact quantity
Minimum order: 65,000 Energy (65K). Both API quotes and orders require an integer resource_amount of at least 65000, including custom quantities. Smaller positive amounts return 422 UNSUPPORTED_PRODUCT; correct the amount before retrying. Request a quote for the exact resource, amount and duration. The response returns price_sun, currency and priced_at. Treat price_sun as an integer SUN string and show it as the current reference price; never hardcode a price. POST /orders prices and locks the order again at acceptance, so no quote identifier is required.
Create one logical order once
Send the resource type, amount, duration, destination wallet and your client_order_id when creating the order. Use one Idempotency-Key for that logical request. The accepted response includes the platform order identifier and locked reserved amount. If the response times out, retry the same payload with the same key or query the order; do not create a fresh key simply because the response was lost.
Understand the five Energy order states
An HTTP success response means the order was accepted, not that Energy is ready. Poll the order or verify signed webhooks. A hash in CONFIRMING can be viewed on TRONSCAN; for a safer transfer, wait for SUCCESS or check the wallet’s available Energy. SUCCESS confirms that the hash was found on TRON, not that your later USDT transfer succeeded. Do not create another order to resolve an uncertain result.
| API status | Meaning | Funds |
|---|---|---|
| PROCESSING | Processing; no transaction hash yet. | Reserved |
| CONFIRMING | Hash available; asynchronous chain lookup in progress. | Reserved |
| SUCCESS | Hash found on TRON. | Locked order amount charged |
| FAILED | Order ended unsuccessfully. | Reservation released |
| REVIEWING | Result uncertain; operator review required. | Remain reserved pending resolution |
Protect the integration
Keep API secrets on your server, configure permitted source IPs, and verify webhook signatures. Store only the identifiers and operational evidence needed for support; do not log full credentials. Treat repeated webhook deliveries as normal and make your consumer idempotent.
Evaluate the actual price
The public API price is a standard reference, not a promise that every account has identical products or pricing. Your account’s current quote is authoritative. Begin with a supported quantity, verify the complete order lifecycle, then scale the integration while watching balance, failures and callback processing.