Documentation Index
Fetch the complete documentation index at: https://docs.reown.com/llms.txt
Use this file to discover all available pages before exploring further.
These are the methods that wallets should implement to handle Tron transactions and messages via WalletConnect.
Session Properties
To enable the new simplified transaction structure, wallets should include tron_method_version: "v1" in their sessionProperties during the connection handshake:
{
"sessionProperties": {
"tron_method_version": "v1"
}
}
When tron_method_version is set to "v1", the transaction structure is simplified to remove the nested transaction.transaction format. If not set, the legacy nested format is used for backward compatibility.
tron_signTransaction
Sign a Tron transaction without executing it.
Parameters
- The transaction to sign:
address (string) - The sender’s Tron address
transaction (object) - The transaction object to sign
Returns
- The signed transaction:
txID (string) - The transaction ID (deterministically derived from raw transaction)
signature (array) - Array of signature strings
raw_data (object) - The raw transaction data
raw_data_hex (string) - The hex-encoded raw transaction data
visible (boolean) - Whether addresses are in visible format
Request with the simplified format:
{
"request": {
"method": "tron_signTransaction",
"params": {
"address": "TKZRPqoV7WLFvjhT4cEyBLv27Rvv1RNWGj",
"transaction": {
"visible": false,
"txID": "539f218871fdd87e94eb03a0dd617107ba722005f37a5ddb82cb65aa4f3b73b0",
"raw_data": {
"contract": [
{
"parameter": {
"value": {
"data": "095ea7b300000000000000000000000069319ea845b1c35a1f7b0e1429f4f303e8f791330000000000000000000000000000000000000000000000000000000000000000",
"owner_address": "4169319ea845b1c35a1f7b0e1429f4f303e8f79133",
"contract_address": "41eca9bc828a3005b9a3b909f2cc5c2a54794de05f"
},
"type_url": "type.googleapis.com/protocol.TriggerSmartContract"
},
"type": "TriggerSmartContract"
}
],
"ref_block_bytes": "7803",
"ref_block_hash": "16138f9255a1db91",
"expiration": 1756201572000,
"fee_limit": 200000000,
"timestamp": 1756201512720
},
"raw_data_hex": "0a027803220816138f9255a1db9140a0ad95ae8e335aae01081f12a9010a31747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e54726967676572536d617274436f6e747261637412740a154169319ea845b1c35a1f7b0e1429f4f303e8f79133121541eca9bc828a3005b9a3b909f2cc5c2a54794de05f2244095ea7b300000000000000000000000069319ea845b1c35a1f7b0e1429f4f303e8f79133000000000000000000000000000000000000000000000000000000000000000007090de91ae8e3390018084af5f"
}
},
"expiryTimestamp": 1756201811
},
"chainId": "tron:0xcd8690dc"
}
{
"visible": false,
"txID": "539f218871fdd87e94eb03a0dd617107ba722005f37a5ddb82cb65aa4f3b73b0",
"raw_data": {
"contract": [
{
"parameter": {
"value": {
"data": "095ea7b300000000000000000000000069319ea845b1c35a1f7b0e1429f4f303e8f791330000000000000000000000000000000000000000000000000000000000000000",
"owner_address": "4169319ea845b1c35a1f7b0e1429f4f303e8f79133",
"contract_address": "41eca9bc828a3005b9a3b909f2cc5c2a54794de05f"
},
"type_url": "type.googleapis.com/protocol.TriggerSmartContract"
},
"type": "TriggerSmartContract"
}
],
"ref_block_bytes": "7803",
"ref_block_hash": "16138f9255a1db91",
"expiration": 1756201572000,
"fee_limit": 200000000,
"timestamp": 1756201512720
},
"raw_data_hex": "0a027803220816138f9255a1db9140a0ad95ae8e335aae01081f12a9010a31747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e54726967676572536d617274436f6e747261637412740a154169319ea845b1c35a1f7b0e1429f4f303e8f79133121541eca9bc828a3005b9a3b909f2cc5c2a54794de05f2244095ea7b300000000000000000000000069319ea845b1c35a1f7b0e1429f4f303e8f79133000000000000000000000000000000000000000000000000000000000000000007090de91ae8e3390018084af5f",
"signature": [
"1c2dd921c15fd83ca1dec4fd999b801f08c8bb073702f4bfafa4132a6e129421ed6267ec81c7dd2e4ef04ce077b101186ec2cda86d69f9f44255c216398cc9c601"
]
}
tron_signMessage
Sign a personal message.
Parameters
The message to sign:
message (string) - The message to sign (plain text)
address (string) - The account address to sign with
Returns
The signed message:
signature (string) - The signature string
Example
{
"request": {
"method": "tron_signMessage",
"params": {
"address": "TXUEmLr...",
"message": "This is a message to be signed for Tron"
},
"expiryTimestamp": 1758269816
},
"chainId": "tron:0xcd8690dc"
}
- dApp result (what client.request(…) resolves to):
{ "signature": "0x1ec623ee6e4716f5a116d0a2755b158ac05dfbc3e9118cca..." }
The methods below are not part of the required wallet surface in the Reown official Tron Wallet example.
dApps may perform these directly against a Tron node or gateway. Wallets may implement them for convenience, but they’re not required.
tron_sendTransaction (optional)
Broadcast a signed transaction to the Tron network.
Parameters
The signed transaction object:
txID (string) - The transaction ID
signature (array) - Array of signature strings
raw_data (object) - The raw transaction data
raw_data_hex (string) - The hex-encoded raw transaction data
Returns
The transaction result:
result (boolean) - Whether the transaction was successfully broadcast
txid (string) - The transaction ID that can be used to look up the transaction
Example
{
"jsonrpc": "2.0",
"id": 1,
"method": "tron_sendTransaction",
"params": {
"signedTransaction": {
"txID": "66e79c6993f29b02725da54ab146ffb0453ee6a43b4083568ad9585da305374a",
"signature": [
"7e760cef94bc82a7533bc1e8d4ab88508c6e13224cd50cc8da62d3f4d4e19b99514f..."
],
"raw_data_hex": "0a02885b2208baa1c278fd0a309f4090c1dbe5e7325aae01081f12a9010a31747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e54726967676572536d617274436f6e747261637412740a15411cb0b7348eded93b8d0816bbeb819fc1d7a51f31121541a614f803b6fd780986a42c78ec9c7f77e6ded13c2244095ea7b30000000000000000000000001cb0b7348eded93b8d0816bbeb819fc1d7a51f3100000000000000000000000000000000000000000000000000000000000000007082f4d7e5e73290018084af5f"
}
}
}
{
"jsonrpc": "2.0",
"result": {
"result": true,
"txid": "66e79c6993f29b02725da54ab146ffb0453ee6a43b4083568ad9585da305374a"
},
"id": 1
}
tron_getBalance (optional)
Get the TRX balance of a Tron address.
Parameters
address (string) - The Tron address to query
Returns
number - The balance in SUN (1 TRX = 1,000,000 SUN)
Example
- Request:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tron_getBalance",
"params": {
"address": "TLyqzVGLV1srkB7dToTAEqgDSfPtXRJZYH"
}
}
{
"jsonrpc": "2.0",
"result": 1000000000,
"id": 1
}
Additional Resources
For more information about Tron RPC methods and implementation details, please refer to the official Tron documentation.