Test Ethereum - TERC20 Tokens

Test Ethereum - TERC20 Tokens

TERC20 tokens can be accessed on different Testnets with the following identifiers.

TestnetToken IdToken NamePrecisionContract Details
Ethereum HoodibgerchTest ERC Token 18 Decimals18https://hoodi.etherscan.io/token/0xe0111b7941adb4ef6c3ac0b86cbccbd23d23062f
Ethereum HooditgousdHoodi Testnet GoUSD 6 Decimals6https://hoodi.etherscan.io/token/0x32275b636171ba98fec28e86ed5f0289bd42aeb9
Ethereum Hoodistgusd1Test USD1 Token 18 Decimals18https://hoodi.etherscan.io/token/0xe4cf91a5bf7cc3d75ac85639e591e51d34948954
Ethereum HoodigousdHoodi Testnet GoUSD 6 Decimals6https://hoodi.etherscan.io/token/0xd94dd81066271d0930e53cfd77f374e64ba306e9
Ethereum Hoodiusd1Test USD1 Token 18 Decimals18https://hoodi.etherscan.io/token/0xed9e025fc3fd4ab704378ff5486b596f00dbef1b
Ethereum HooditstethHoodi Testnet STETH 18 Decimals18https://hoodi.etherscan.io/token/0x3508a952176b3c15387c97be809eaffb1982176a
Ethereum Hoodihterc18dpTest ERC Token 18 Decimals18https://hoodi.etherscan.io/token/0x21782ccd72a67223df0d5a7dfa4db2343e4ee6aa
Ethereum Hoodibgerchv2Test ERC Token 18 Decimals18https://hoodi.etherscan.io/token/0xd9327fd36c3312466efed23ff0493453ee32f551
Ethereum Hoodihterc6dpTest ERC Token 6 Decimals6https://hoodi.etherscan.io/token/0x76c57d19bd3529dadf4bb66e75f0808bc8264a5e
Ethereum Hoodihterc2dpTest ERC Token 2 Decimals2https://hoodi.etherscan.io/token/0x335f0741c9be939bc8226b31b79df9ca633f4559
Ethereum HooditxsgdXSGD Hoodi 6 Decimals6https://hoodi.etherscan.io/token/0x63681558c1b680e43bbcadc0ced21075854bba87
Ethereum HooditxusdXUSD Hoodi 6 Decimals6https://hoodi.etherscan.io/token/0x37557a96ea4415af2d96a6f896fa8281a22802ce
Ethereum HooditwethWrapped Ether Hoodi 18 Decimals18https://hoodi.etherscan.io/token/0x2387fd72c1da19f6486b843f5da562679fbb4057
Ethereum HooditeigenTest Eigen 18 Decimals18https://hoodi.etherscan.io/token/0x15d7d3408b2d5a1e6bcfae9e121d1ddacea8d7f8

Wallet functionality

Unlike Ether, ERC20 tokens do not have the full functionality of a wallet. You cannot create wallets, create/list/get receive addresses, or share wallets for ERC20 tokens.

To retrieve token details associated with an Ethereum wallet, such as balance, pending approvals, policies, and webhooks, set the allTokens parameter to true with the following calls:

  1. Get Wallet by Coin and ID
  2. List Wallets
  3. List Pending Approvals
  4. List Wallet Webhooks
  5. List Transfers
  6. Add Wallet Webhook

Keychains

ERC20 tokens do not have a direct association with keys or keychains. Instead, all tokens share the same keys/keychains that belong to the Ethereum wallet.

Balances

Each token has a different divisibility factor which is specified in the token contract. This value is usually 1,000,000,000,000,000,000 (1018) units, but can vary from token to token. Check the client constants to see the number of decimal places the token supports.

Balances are supported in string format: balanceString, confirmedBalanceString, and spendableBalanceString.

Transactions

BitGo's Ethereum multisig contract currently only supports one sender and one recipient. That means that the sendMany call only accepts one recipient for tokens.

ERC20 Tokens Webhooks

By setting the allTokens parameter to true, a generic webhook is created which triggers on all ERC20 token and ETH transactions. It sends an HTTP request to your webhook URL and specifies whether it is Ethereum or a token using the field "coin".

Here's an example response for a test token called "terc".

{
    "hash":"0x3e00ae17961d3d42ae722085904ba84e63a32b005ff46afff28b7c9c76f63291",
    "transfer":"5b612d25c9067f2a1db11a15f165989e",
    "coin":"terc",
    "type":"transfer",
    "state":"confirmed",
    "wallet":"5a13adcab70f2c284fdd9682db5e6d64"
}

To get additional details about this transfer, you need to get the transfer details using the token name and transfer id. For the above transfer you'd need to call the Get Transfer route to check the amount transferred and other details (e.g. /api/v2/terc/wallet/5a13adcab70f2c284fdd9682db5e6d64/transfer/5b612d25c9067f2a1db11a15f165989e).

Note: Transactions that send both Ethereum and ERC20 tokens (or multiple token types) supported by BitGo generate one webhook notification for each.