Jeswin Rebil
Jeswin Rebil

Reputation: 460

Tron Web - Validate TransferContract error, no OwnerAccount (Tron Link)

I am developing a block chain web application using Tron Web. I have followed the document but getting below error while using tronweb.trx.sign() function,

Uncaught (in promise) class org.tron.core.exception.ContractValidateException : Validate TransferContract error, no OwnerAccount.

Below is my code, (I have tron link chrome extension, Node: Mainnet)

var obj = setInterval(async () => {
            if (window.tronWeb && window.tronWeb.defaultAddress.base58) {
                clearInterval(obj)
                var tronweb = window.tronWeb
                var tx = await tronweb.transactionBuilder.sendTrx('fromaddr', 10, 'toaddr');
                var signedTx = await tronweb.trx.sign(tx);
                var broastTx = await tronweb.trx.sendRawTransaction(signedTx);
                console.log(broastTx)
            }
        }, 10)

Kindly check and let me know what am i missing

Upvotes: 0

Views: 6587

Answers (2)

Hooman Limouee
Hooman Limouee

Reputation: 1403

You should replace 'fromaddr' with 'toaddr'

var obj = setInterval(async () => {
            if (window.tronWeb && window.tronWeb.defaultAddress.base58) {
                clearInterval(obj)
                var tronweb = window.tronWeb
                var tx = await tronweb.transactionBuilder.sendTrx('toaddr', 10, 'fromaddr');
                var signedTx = await tronweb.trx.sign(tx);
                var broastTx = await tronweb.trx.sendRawTransaction(signedTx);
                console.log(broastTx)
            }
        }, 10)

Upvotes: 1

Ming
Ming

Reputation: 775

This line, the first and third argument are string literals and not object.

var tx = await tronweb.transactionBuilder.sendTrx('fromaddr', 10, 'toaddr');

From the docs , first and third argument are addresses.

await tronWeb.transactionBuilder.sendTrx(
      toAddress,
      amount,
      fromAddress
);

Note: Tron addresses are available in Hex and and Base format. To convert one format to one another you can use tronWeb.address.toHex(address) or tronWeb.address.fromHex(address)

Upvotes: 0

Related Questions