[Ethereum] Sending Tether USDT via RPC JSON API call

erc-20json-rpc

I'm trying to send Tether using JSON RPC API via 0xdac17f958d2ee523a2206206994597c13d831ec7 contract.
I've tried to cases:

  • From simple ETH wallet

  • From ETH wallet, which has only USDT

    1. This is what I am sending from my ETH wallet:
{
"jsonrpc":"2.0",
"id":"personal_sendTransaction_1562573686",
"method":"personal_sendTransaction",
"params":[{
    "from":"0x1653d4669bab423cab7593260bc373d5d57d7f8d",
    "to":"0xdac17f958d2ee523a2206206994597c13d831ec7",
    "value":"0x0",
    "data":"0xa9059cbb000000000000000000000000CfCB8f60D94827381b4BDa53f052aAFEC246D72e00000000000000000000000000000000000000000000000000000000000dbba0"
  },
  "password"
 ]
}

This is what I've got as a result

Transaction result

ERC-20 Token Transfer Error (Unable to locate Corresponding Transfer Event Logs)

Missing opcode 0xfe

UPD Seems like you can not send USDT without having them on ETH wallet, like no chance to convert ETH to USDT. You should have both ETH and USDT on your wallet

  1. And the second case, when I have only Tether on my ETH wallet
{
"jsonrpc":"2.0",
"id":"personal_sendTransaction_1562579177",
"method":"personal_sendTransaction",
"params":[{
    "from":"0xbe9027e5d76df40e51300a49aea6152e0c885eb1",
    "to":"0xdac17f958d2ee523a2206206994597c13d831ec7",
    "value":"0x0",
    "data":"0xa9059cbb000000000000000000000000CfCB8f60D94827381b4BDa53f052aAFEC246D72e00000000000000000000000000000000000000000000000000000000000dbba0"
  },
  "password"
 ]
}

and I've got this

{"code":-32000, "message":"insufficient funds for gas * price + value"}

like there are no funds at all on my wallet.
But I definitely have USDT there

What should I do to fix at least, the second case? Is it possible?

Best Answer

Ether is used to pay for gas not the token itself.

Related Topic