Signing request types
To sign transactions you build yourself or messages you format yourself, use raw signing.
Wallet
Create a wallet withnetworkType: "NETWORK_TYPE_TRON". Activate the address by receiving TRX or a TRC-10 token from an existing account; receiving a TRC-20 token does not activate it.
Fund it with TRX for fees and the asset being sent. Transactions consume Bandwidth; TRC-20 transfers also consume Energy. TRX pays when available resources are insufficient.
Send TRX
This TRON Mainnet example sends1 TRX.
value is an integer string in sun: 1 TRX = 1,000,000 sun. Use base58check addresses starting with T; from and to are different addresses.
Send BTTOLD (TRC-10)
ReplacetronSendNative with this payload in the same request:
1 BTTOLD, the legacy BitTorrent TRC-10 token (assetName: "1002000", six decimals). The newer BTT token uses TRC-20. See BitTorrent’s migration notice.
Send USDT (TRC-20)
ReplacetronSendNative with this payload in the same request:
1 USDT on TRON Mainnet (six decimals). contractAddress is Tether’s TRON Mainnet USDT contract. Optional feeLimit is a positive integer string in sun that limits contract execution fees; omit it to use MPCVault’s default.
Sign and track
Sign the request. MPCVault broadcasts by default;txHash is the TRON transaction ID (txID).
For TRX and TRC-10, query the solidified transaction body. Match the recipient and amount, plus the asset ID for TRC-10; check ret[0].contractRet: "SUCCESS" when present.
For USDT and other TRC-20 tokens, query the solidified receipt:
receipt.result: "SUCCESS", no top-level result: "FAILED", and a Transfer event matching the token contract, sender, recipient and amount.
An empty response is not a failure result; keep tracking the original txID. See TRON confirmation semantics.