fobs stm accounts
fobs stm accounts <action> [target] [options]
| Action | Description |
|---|---|
list | List accounts (sorted by name ASC server-side) |
show <id> | Show one account by ID |
balance <id> [YYYY-MM-DD] | Computed balance as of a date (default: today) |
create | Create a new account |
update <id> | Update account fields |
retire <id> / quarantine <id> / reactivate <id> | Set lifecycle status |
delete <id> | Permanently delete (blocked if it has linked transactions) |
merge <retain_id> <delete_id> | Merge one account into another (destructive) |
add-identifier <id> <value> / remove-identifier <id> <value> | Manage statement-matching identifiers |
recalculate-opening-balance <id> | Recompute opening balance from the earliest statement |
accounts list
fobs stm accounts list
fobs stm accounts list --category bank
fobs stm accounts list --status retired # all | active (default) | retired | quarantined
fobs stm accounts list --fields id,name,opening_balance,created_at
fobs stm accounts list --totals
fobs stm accounts list --page 2 --limit 50
# Export — auto-paginates up to 15000 rows, respects --category and --status
fobs stm accounts list --format csv --output accounts.csv
fobs stm accounts list --format json --output accounts.json
Flags
| Flag | Default | Description |
|---|---|---|
--category <kind> | — | bank or credit_card |
--status <mode> | active | active (default), retired, quarantined, or all |
--fields <list> | default columns | Comma-separated field names |
--totals | — | Print count, count-by-category, and opening_balance sum |
--page <n> / --limit <n> | 1 / 100 | Table paging only |
--format <fmt> / --output <path> | table / stdout | Export to CSV / JSON file |
--json | — | Raw JSON output |
Default Columns
ID, NAME, CATEGORY, ACCT NO, CCY, OPENING, UPLOAD FREQ, STATUS.
Available Fields
id, name, category, description, acc_no, currency, color, opening_balance, opening_balance_date, status, upload_frequency, created_at, review.
Notes
- Sort: Fixed
name ASCserver-side; not overridable today. - Opening balance: The accounts API divides
opening_balanceby 1000 server-side, so the value you see is already in currency units. CSV/JSON exports preserve the API value; the table view adds thousands separators. - The web UI has additional
nameandreviewedfilters that the API does not yet expose; the CLI will gain them when the API does.
accounts show <id>
fobs stm accounts show acc123xyz
fobs stm accounts show acc123xyz --json
Prints the full account record. With --json, output matches GET /api/v1/accounts/:id.
accounts balance <id> [YYYY-MM-DD]
fobs stm accounts balance acc123xyz # balance today
fobs stm accounts balance acc123xyz 2026-04-30 # balance as of that date
fobs stm accounts balance acc123xyz 2026-04-30 --json
Computes the balance from opening_balance + signed sum of transactions up to (and including) the given date. Matches GET /api/v1/accounts/:id/balance.
accounts create
fobs stm accounts create --name "Business Checking" --category bank --currency INR
fobs stm accounts create --name "Business Card" --category credit_card --acc-no 1234
Flags
| Flag | Description |
|---|---|
--name | Required |
--category | bank or credit_card |
--currency, --acc-no, --description, --color | Optional |
--opening <amount> | Opening balance, currency units |
--upload-frequency | daily, weekly, monthly, quarterly, or manual (default: weekly) |
accounts update <id>
Same flags as create, all optional — only fields you pass are changed.
fobs stm accounts update acc123xyz --name "Renamed Account"
fobs stm accounts update acc123xyz --opening 5000.50
accounts retire <id> / accounts quarantine <id> / accounts reactivate <id>
fobs stm accounts retire acc123xyz # closed but real: hidden from live UI, still counted in reports
fobs stm accounts quarantine acc123xyz # suspect data: hidden from UI and excluded from reports
fobs stm accounts reactivate acc123xyz # back to active
Idempotent, no confirmation prompt. Each sets status via Update Account. See the lifecycle definitions.
accounts delete <id>
fobs stm accounts delete acc123xyz
fobs stm accounts delete acc123xyz --yes # skip confirmation
Permanently deletes the account. Prompts for confirmation unless --yes/-y. Fails with a clear message if the account still has linked transactions — reassign or delete them first, or retire/quarantine it instead. Matches Delete Account — a guarded hard delete.
accounts merge <retain_id> <delete_id>
fobs stm accounts merge acc_retain acc_delete
fobs stm accounts merge acc_retain acc_delete --yes
Merges <delete_id> into <retain_id>: unions their identifiers, permanently deletes all of <delete_id>'s transactions, relinks and re-processes its statements onto <retain_id>, then deletes <delete_id>. Destructive and irreversible — prompts for confirmation (naming both accounts) unless --yes. Prints the merge summary (transactions deleted, statements requeued, merged identifiers). Matches Merge Accounts.
accounts add-identifier <id> <value> / accounts remove-identifier <id> <value>
fobs stm accounts add-identifier acc123xyz 1234567890
fobs stm accounts remove-identifier acc123xyz 1234567890
Manage the identifier array used to auto-match uploaded statements to this account. No confirmation needed — reversible. Matches Manage Account Identifiers.
accounts recalculate-opening-balance <id>
fobs stm accounts recalculate-opening-balance acc123xyz
Recomputes opening_balance/opening_balance_date from the earliest statement on file. Prints the old and new values. Matches Recalculate Opening Balance.
Related
- Account Object — field reference
- Accounts API — REST endpoints
- Common Flags — flags that work across commands