1

I'm a bit new to Web3, and have a serious job to build a multi-chain wallet

Already know the basics, create wallet or account with Web3 (BTW don't know the difference)

anyway, I'd like to know how to send a transaction (just send token balance to another address)

With some research, I see this library has a simple interface, however it uses ethers not Web3, and would like to depend on Web3 for some reasons

So, how to achieve the same functionality in Web3 to send a transaction and just determine the token address

as, most of the answers which I found ask to provide the ABI of the token which is impossible to consider providing ABI for each token

for example to send some CAKE, have to provide ABI of CAKE and to send UNISWAP, have to provide ABI of UNISWAP

it's not a practical solution

Example of the answers which I'm talking about

https://ethereum.stackexchange.com/a/25827/108258

1 Answer 1

1

First of all you can read about the accounts and wallets here.

Second of all, as far as I know, the best method in both ether.js and web3.js to interact with a contract is by passing ABI and address of the contract.

As for the link you have provided, the multi-sig wallet method they are using, under the hood, they should be fetching the ABI from the etherscan through their APIs.

it's not a practical solution

Do remember, there is a reason we have standards in the ethereum. For all the tokens you have mentioned above, they have build following the same standard ERC20. So it is enough if you pass erc20 token generic ABI.

If you are still not convinced and do not want to pass the ABI every time, you can use the etherscan API to fetch ABI by passing the contract address before interacting with the contract or doing some transfer functions.

Here's the link for instructions.

Tell me if it helps!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.