Skip to content

feat(bank-accounts): update approved bank account — mobile [ENG-509]#665

Merged
islandbitcoin merged 3 commits into
mainfrom
jabariennis/eng-509-bank-account-update-flow-let-users-edit-their-approved
Jul 13, 2026
Merged

feat(bank-accounts): update approved bank account — mobile [ENG-509]#665
islandbitcoin merged 3 commits into
mainfrom
jabariennis/eng-509-bank-account-update-flow-let-users-edit-their-approved

Conversation

@islandbitcoin

Copy link
Copy Markdown
Contributor

What & why

Client side of ENG-509 — lets a user update an approved Jamaican bank account from Settings → Ways to get paid → Bank accounts. (Companion PRs in flash and frappe-flash-admin.)

Changes

  • New EditBankAccount screen — reuses the upgrade-flow DropDownField/InputField + SupportedBanks, prefilled from the current account, currency read-only (locked), with a confirm sheet: "Cash-outs keep going to your current account until the new details are approved."
  • "Update details" entry in the WithdrawRow action sheet for ERPNext (source: "erpnext") rows.
  • use-bank-accounts now derives the row status pill from the account's pendingUpdate (shows Pending while under review) instead of a hardcoded "verified".
  • GraphQL: bankAccountUpdateRequest mutation + pendingUpdate selection on the BankAccounts query (regenerated generated.ts / .gql against the local public-schema.graphql).
  • Navigation route + i18n strings.

Testing

yarn dev:codegen ✓ · yarn tsc:check ✓ · graphql-check (operations valid vs schema) ✓ · yarn update-translations ✓ · eslint ✓.

Depends on

The flash backend PR (mutation + BankAccount.pendingUpdate) must land for this to function end-to-end.

🤖 Generated with Claude Code

Client side of ENG-509. Adds an "Update details" action to ERPNext bank
accounts in the Bank accounts hub and a prefilled edit screen that submits
a change request for admin review.

- EditBankAccount screen (reuses upgrade-flow field components +
  SupportedBanks); currency shown read-only (locked); confirm sheet stating
  cashouts continue to current details until approved.
- "Update details" entry in the withdraw-row action sheet for ERPNext rows.
- Row status pill reflects an open update request (pendingUpdate) instead of
  a hardcoded "verified".
- GraphQL mutation + pendingUpdate query field (regenerated hooks/types).
- Navigation route + i18n strings.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@linear

linear Bot commented Jul 13, 2026

Copy link
Copy Markdown

ENG-509

@islandbitcoin

Copy link
Copy Markdown
Contributor Author

Part of ENG-509 — this change spans three repos:

Merge order: flash#444 first (it defines the GraphQL contract), then the other two — the mobile change depends on the backend field to work end-to-end.

Dread and others added 2 commits July 13, 2026 00:28
…[ENG-509]

- Show the admin's rejection reason as a banner on the edit screen (the
  backend now returns rejected requests via pendingUpdate).
- Validate account type against {Chequing, Savings} client-side and guard
  the prefill, so a non-canonical stored value can't dead-end at the server.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Clears the translation-drift CI check (every locale must include the keys
present in en.json). Adds the 9 new BankAccountsScreen keys as English
placeholders — matching the repo's untranslated-key convention — to all 23
translation files.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@islandbitcoin
islandbitcoin merged commit 6f0990d into main Jul 13, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant