TRON - Error: Cannot send TRC-20 callback is not defined
When attempting to send TRC-20 tokens, you may encounter an error looking as follows or similar:
{
"statusCode": 403,
"errorCode": "tron.trc20.tx.send.error",
"message": "Cannot send TRC-20 transaction.",
"cause": "callback is not defined"
}
This error is usually related to a malformed payload where the amount
has more decimals than a TRC-20 token supports.
Example request:
curl --location 'https://api.tatum.io/v3/tron/trc20/transaction' \
--header 'Content-Type: application/json' \
--header 'x-api-key: {YOUR_API_KEY}' \
--data '{
"to": "TLY7qkYdFaskWaWaMASdp6XJFqqvA18Bhz",
"tokenAddress": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"amount": "10.00448335", //This TRC-20 token supports 6 decimals while the amount has 8
"feeLimit": 1000,
"fromPrivateKey": "####"
}'
By checking the TokenAddress
over the Tronscan Explorer, we can confirm that the token "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t
" supports six (6) decimals, not eight (8).
After the decimals are corrected to match what the token supports, the transaction should be possible to execute.
Updated 6 months ago