Skip to main content
Sign a Tron transaction and broadcast it to the network. Privy automatically fetches block reference fields (ref_block_bytes, ref_block_hash, expiration) if you omit them.
To sign without broadcasting — for example when using a custom RPC or gas sponsor — use tron_signTransaction instead.
The wallet RPC endpoint is a synchronous endpoint, and a successful response indicates that the transaction has been broadcasted to the network. Transactions may get broadcasted but still fail to be confirmed by the network. The endpoint does not wait for confirmation or retry if the transaction fails to be confirmed. To handle these scenarios, see our guide on speeding up transactions.

SDK methods

Learn more about sending Tron transactions using our SDKs here.
Idempotency on errors: On 4xx or 5xx, Privy caches the response and replays it for the same key. Generate a new key to retry after a server error. Policy violations are an exception and allow same-key retries.

Headers

string
required
ID of your Privy app.
string
Request authorization signature. If multiple signatures are required, they should be comma separated.

Path Parameters

string
required
ID of the Tron wallet to sign and send with.

Body

string
required
Must be "tron_sendTransaction".
string
Tron CAIP-2 chain. Defaults to tron:mainnet. Use tron:nile for the Nile testnet.
object
required

Returns

string
Always "tron_sendTransaction".
string
Tron transaction ID — SHA-256 of the raw transaction bytes, lowercase hex, no 0x prefix.
string
The CAIP-2 chain the transaction was broadcast on.
string
Privy internal transaction ID.
string
Echoed back if provided in the request.