gen wallet.
Recipients areAllgrd@...account locators. Every--toand--accountflag on this page expects a 1-part bech32m account locator with thegrd@HRP. Raw0x...entity hex is rejected. To get the locator for a wallet you control, rungen wallet show <name> --account-address-only. Seegen walletfor the full wallet surface.
gen client commands accept the global --rpc-url <URL> (-s), --header NAME=VALUE, and --json (-j) options. JSON mode emits a single envelope with ok, command, timestamp, and result.
Balances
gen wallet balance
Query the GEN balance (or a selected token) for the active or named wallet.
--token-contract <GVM_CONTRACT>: query a non-default token; defaults to the genesis GEN token.
Balance, Symbol, and Name.
gen wallet balances
Query every token balance held by the active or named wallet in one call.
balance, symbol, and name per entry.
gen client balance
Query the GEN balance (or a selected token) for any account on the network, not just one of your local wallets.
--account <ACCOUNT>:grd@...locator of any account.--wallet <NAME>: query a named local wallet’s account instead of--account.--token-contract <GVM_CONTRACT>: query a non-default token.
--account nor --wallet is supplied, the active wallet is used. Output mirrors gen wallet balance.
Transfers
gen wallet transfer
Send tokens from a local wallet to a recipient account. The active wallet is used unless --wallet is supplied; transfers prompt for confirmation unless --yes is passed.
--to <RECIPIENT>: recipientgrd@...locator (required).--amount <SUBUNITS>: amount in token subunits, decimal string (required).--wallet <NAME>: source wallet; defaults to the active wallet.--token-contract <GVM_CONTRACT>: non-default token contract; must expose the holder transfer ABI.--with-confirmation: wait for the receiving holder callback instead of fire-and-forget.--no-wait: return after the validator acknowledges the submission.--yes: skip the confirmation prompt; required for non-interactive use and--json.
status after waiting (or just the activation ID with --no-wait).
In --json mode the result is the same envelope used across the CLI:
gen client transfer
Lower-level alternative to gen wallet transfer. Same on-chain effect, but --wallet <NAME> is required (there is no implicit active-wallet fallback) and there is no interactive confirmation prompt.
--wallet <NAME>: source wallet (required; the account is debited and the wallet signs).--to <RECIPIENT>: recipientgrd@...locator (required).--amount <SUBUNITS>: amount in token subunits (required).--token-contract <GVM_CONTRACT>: non-default token contract.--with-confirmation: wait for the receive callback.--no-wait: return after submission.
--yes prompt is not appropriate.
Faucet
The faucet signs the activation; you supply the recipient. If the recipient account does not exist, the funded path auto-creates it via the FT contract’s receive-failure callback.gen wallet faucet
Request faucet funds for, or simply create, an account. Defaults to the active wallet’s account when no recipient flag is set.
--amount <SUBUNITS>: amount to send from the faucet (must be> 0). Mutually exclusive with--create-account-only.--create-account-only: submit a bare account-creation activation; no funds.--to <RECIPIENT>: explicit recipientgrd@...locator.--wallet <NAME>: fund the named wallet’s account. Mutually exclusive with--to.--token-contract <GVM_CONTRACT>: non-default token contract; funded path only.--without-confirmation: use fire-and-forgettransferinstead oftransfer_with_confirmation(the default).--no-wait: return after submission.
status.
gen client faucet
Same implementation and flags as gen wallet faucet. Use whichever subcommand fits the rest of your script.
--no-wait, follow up with gen client get-activation --activation-id <id> to verify the final status.
Common patterns
- Sign offline, submit elsewhere. Build the canonical unsigned bytes once with
gen wallet build-activation, sign on an isolated host withgen wallet sign-activation(orgen client sign-activation), then push the signed bytes from anywhere withgen client submit-activation --signed-activation-file ./signed.txt. The same wallet that built the activation must sign it. - Dry-run before submitting. Pass the unsigned activation produced by
build-activationtogen client simulate-activationto dry-run against current (or a specific) state without broadcasting. Useful for verifying transfer parameters and gas before spending. See Activations. - Submit and poll. Add
--no-waitto anytransferorfaucetcommand to return as soon as the validator acknowledges the request; the response includes theactivation_id. Confirm the final outcome later withgen client get-activation --activation-id <id>. - Make repeated identical submissions unique. Transfer and funded-faucet submissions generate a fresh activation tag automatically. For the detached flow, pass
--activation-tag <U32>tosign-activationorsign-and-submit-activationto override it manually.
See also
- Wallet management: create, import, export, and select wallets.
- Activations:
build-activation,simulate-activation,sign-activation,submit-activation, andget-activation. - Quickstart: end-to-end first transfer in five minutes.

