[Ethereum] USD Coin Balance Check By Web3

erc-20ethereum-wallet-dappnodejsweb3js

Now I am getting trouble on checking the USDC balance in my wallet address using web3.

USDC is also said that it is ERC20 token, but when I checked the token contract

0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48

This doesn't contain the erc20 standard.
So I guess I can't use the traditional token balance checking way in this coin.
Also I tried in traditional way, but it never work.
How can I check the USDC balance / and create transfer transaction from one address to another using Web3?

Best Answer

This is proxy contract, which means that it delegates actual work to another contract, probably to this one: 0x0882477e7895bdc5cea7cb1552ed914ab157fe56, which in turn is ERC-20 compliant. Proxy contract allows its administrator to change address of the contract actual work is delegated to, effectively changing smart contract logic. Proxy contracts like this one are implemented via DELEGATECALL opcode that executes code of another contract on behalf of this contract, i.e. called code has access to the storage and balance of calling contract.

Related Topic