The bank
module maintains the state of two primary objects:
- Account balances by address;
- Total supply of tokens of the chain
bank
module tracks and provides query support for the total supply of all assets used in the application. It also supports token transfer functionalities. Specifically, the total supply is updated whenever a token is:
- Minted, e.g. Token created by the mint module; or
- Burned, e.g. Token distorted by the slashing module.
tx bank send [from_key_or_address] [to_address] [amount] [network_id]
- Send Funds
You can transfer of tokens between to a designated address by the tx bank send
command. For example, we can send 1 basetcro to Bob's address by
$ cronosd tx bank send mykey tcrc1xwxk09wds0u2k6l39sp0e8ajx3jkw6dm0z5c26 1basetcro --keyring-backend test --chain-id ethermint-2
## Transaction payload##
{"body":{"messages":[{"@type":"/cosmos.bank.v1beta1.MsgSend","from_address":<address a>,"to_address":<address b>,"amount":[{"denom":"basetcro","amount":"1"}]}],"memo":"","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""}},"signatures":[]}
confirm transaction before signing and broadcasting [y/N]: y
query bank balances [address]
- Check the balance of a specified account
One can check the current balance of a specified account by:
$ cronosd query bank balances tcrc1a303tt49l5uhe87yaneyggly83g7e4uncdxqtl --output json | jq
{
"balances": [
{
"denom": "basetcro",
"amount": "99999000000000000000000000"
}
],
"pagination": {
"next_key": null,
"total": "0"
}
}
query bank total
- Check the total supply of the token
You can also check the current total supply of the token by:
$ cronosd query bank total --output json | jq
{
"supply": [
{
"denom": "basetcro",
"amount": "100020217468056427441579571"
}
],
"pagination": {
"next_key": null,
"total": "1"
}
}
REST endpoint
The parameters can be checked by browsing to the following REST endpoint on Mainnet:
https://rest.cronos.org/cosmos/bank/v1beta1/params/
{
"params": {
"send_enabled": [
{
"denom": "stake",
"enabled": true
},
{
"denom": "basecro",
"enabled": false
}
],
"default_send_enabled": true
}
}
bank
module: Network Parameters and configuration
Key | Type | Example |
---|---|---|
SendEnabled |
[]SendEnabled | [{denom: "basetcro", enabled: true }] |
DefaultSendEnabled |
bool | true |