web3 / web3.js

Collection of comprehensive TypeScript libraries for Interaction with the Ethereum JSON RPC API and utility functions.
https://web3js.org/
Other
19.22k stars 4.92k forks source link

Transaction has been reverted by the EVM in token transfer #7287

Open bh717 opened 1 week ago

bh717 commented 1 week ago

`try { let rpcUrl; if (network === "ETH") rpcUrl = process.env.MAINNET_INFURA_URL; else if (network === "BSC") rpcUrl = process.env.BSC_MAINNET_INFURA_URL; console.log("rpcUrl:", rpcUrl); const web3 = new Web3(rpcUrl); const account = web3.eth.accounts.privateKeyToAccount("0x" + privateKey); const fromAddress = account.address; const tokenContract = new web3.eth.Contract(tokenAbi, tokenAddress);

const nonce = await web3.eth.getTransactionCount(fromAddress, "latest");

const wallet = web3.eth.accounts.wallet.add("0x" + privateKey);

const gasLimit = await web3.eth.estimateGas({
  from: fromAddress,
  to: tokenAddress,
  data: tokenContract.methods.transfer(toAddress, amount).encodeABI(),
});

console.log("nonce, gasLimist:", nonce, gasLimit);
const tx = {
  from: fromAddress,
  to: tokenAddress,
  data: tokenContract.methods.transfer(toAddress, amount).encodeABI(),
  gasPrice: await web3.eth.getGasPrice(),
  gasLimit: gasLimit,
  nonce: nonce,
  chainId: network === "ETH" ? 1 : 56,
};
const signedTx = await web3.eth.accounts.signTransaction(tx, privateKey);
console.log("signedTx:", signedTx);
const receipt = await web3.eth.sendSignedTransaction(
  signedTx.rawTransaction
);

console.log(
  "Token transfer successful with hash:",
  receipt.transactionHash
);
return receipt;`

amount: 356981723430n This is my code and log of amount. I am getting Transaction has been reverted by the EVM in sendSignedTransaction. Plz help for solving my problem as soon as possible

danforbes commented 6 days ago

Can you share the details of the contract you're trying to interact with?

lasse717 commented 6 days ago

https://etherscan.io/address/0xd29da236dd4aac627346e1bba06a619e8c22d7c5 This is my token contract.

danforbes commented 6 days ago

So you're interacting with the contract on Ethereum Mainnet? Are you certain that the from account has sufficient funds to transfer? What is the address of the from account?

luu-alex commented 1 day ago

Whats the error?