You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Due for payment 2026-05-29] [$250] Update the copy for "Assigned Cards" card in the Wallet #90935
Please re-state the problem that we are trying to solve in this issue.
The Wallet page still labels the assigned-card section as "Assigned cards" and describes it as "Transactions from these cards sync automatically." The requested copy is shorter: the card title should be "Cards" and the supporting copy should be "Transactions from assigned cards sync automatically."
What is the root cause of that problem?
WalletPage renders this card from the shared wallet translation keys, not from inline copy:
assignedCardsDescription: 'Transactions from these cards sync automatically.',
So every Wallet render that uses walletPage.assignedCards and walletPage.assignedCardsDescription continues to display the previous title and supporting copy.
What changes do you think we should make in order to solve the problem?
Update the walletPage.assignedCards translation value to Cards and update walletPage.assignedCardsDescription to Transactions from assigned cards sync automatically.
Keep the existing WalletPage call site unchanged because it already pulls from the correct localization keys. If the PR updates checked-in locale mirrors in the same pass, adjust the corresponding walletPage.assignedCards and walletPage.assignedCardsDescription entries so translated builds do not keep the old assigned-card wording.
Scope boundaries: files touched should be src/languages/en.ts at walletPage.assignedCards / walletPage.assignedCardsDescription, plus the mirrored src/languages/*.ts locale entries if the project expects locale files to stay in sync in the same PR. Platforms affected are all platforms through the shared Wallet page. Code paths not touched: src/pages/settings/Wallet/WalletPage/index.tsx, PaymentMethodList, card data loading, card assignment logic, and workspace card management. API/backend behavior changes: none.
What alternative solutions did you explore? (Optional)
I considered changing the strings at the WalletPage section call site, but that would hardcode UI copy and bypass the existing i18n path. The narrower and project-consistent fix is to update the localization values that WalletPage already renders.
I did not find any strict human proposal comments to differentiate against. The existing assignee comment asks MelvinBot to create a PR, but it does not contain a competing root-cause or implementation proposal.
changed the title [-]Update the copy for "Assigned Cards" card in the Wallet[/-][+][$250] Update the copy for "Assigned Cards" card in the Wallet[/+]on May 18, 2026
The Wallet page renders the "Assigned Cards" section using translate('walletPage.assignedCards') for the title and translate('walletPage.assignedCardsDescription') for the description in src/languages/en.ts (lines 2478–2479). The current copy ("Assigned cards" / "Transactions from these cards sync automatically.") does not match the requested copy ("Cards" / "Transactions from assigned cards sync automatically.").
What changes do you think we should make in order to solve the problem?
In src/languages/en.ts (line 2479), change assignedCardsDescription: 'Transactions from these cards sync automatically.' → assignedCardsDescription: 'Transactions from assigned cards sync automatically.'.
Update the matching walletPage.assignedCards and walletPage.assignedCardsDescription entries in every other locale file under src/languages/ (es.ts, fr.ts, nl.ts, pl.ts, ja.ts, etc.) so localized copy stays in sync with the new English wording.
Update help/ref/settings/wallet/index.md (line 40) heading from ## Assigned Cards → ## Cards so the Help Center mirrors the new wallet label.
No component change needed — WalletPage already consumes these two keys via translate(), so updating the translation values propagates to the UI automatically.
What alternative solutions did you explore?
Renaming the key from assignedCards to cards was considered but rejected — it would churn ~63 references across locale files and unrelated screens (e.g. ExpensifyCardPage) for no user-visible benefit; updating the value in place is the minimal, safe change.
⚠️@aswin-s Thanks for your proposal. Please update it to follow the proposal template, as proposals are only reviewed if they follow that format (note the mandatory sections).
The Wallet page renders the assigned-cards section header and subtitle by pulling from two translation keys — walletPage.assignedCards and walletPage.assignedCardsDescription — via translate() at src/pages/settings/Wallet/WalletPage/index.tsx#L679-L680. The English source values for those two keys at src/languages/en.ts#L2462-L2463 still hold the old copy: 'Assigned cards' and 'Transactions from these cards sync automatically.'. Because the component reads directly from these keys, no UI change is possible without updating the source strings.
What changes do you think we should make in order to solve the problem?
Update only src/languages/en.ts:
Line 2462: change assignedCards value from 'Assigned cards' to 'Cards'
Line 2463: change assignedCardsDescription value from 'Transactions from these cards sync automatically.' to 'Transactions from assigned cards sync automatically.'
No changes are needed to WalletPage/index.tsx — it already consumes the correct keys. Non-English locale files (es.ts, fr.ts, de.ts, it.ts, ja.ts, nl.ts, pl.ts, pt-BR.ts, zh-hans.ts) each have their own translated values for the same two keys; those translations are managed by the translations team and are out of scope for this PR. Platforms affected: all (shared translation path). No API, Onyx, or navigation changes required.
What alternative solutions did you explore? (Optional)
I considered renaming the key from assignedCards to cards, but assignedCards is also used in unrelated contexts — e.g. the card-list grouping filter at src/languages/en.ts#L5592 — so renaming would require touching multiple unrelated call sites for no user-visible gain. Updating the value in place is the minimal, safe change.
The existing proposal from @aswin-s also suggests updating help/ref/settings/wallet/index.md. I checked and that file is HelpDot documentation maintained separately from the app translation pipeline; whether it needs updating is a separate scope decision and should not block this copy-only fix.
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.
Activity
flaviadefaria commentedon May 18, 2026
@MelvinBot can you create a PR for this change?
MelvinBot commentedon May 18, 2026
🤖 Draft PR created: #90936
Please mark it as "Ready for review" when it is ready for review.
melvin-bot commentedon May 18, 2026
Triggered auto assignment to Contributor-plus team member for initial proposal review - @marufsharifi (
External)KJ21-ENG commentedon May 18, 2026
Proposal
Please re-state the problem that we are trying to solve in this issue.
The Wallet page still labels the assigned-card section as "Assigned cards" and describes it as "Transactions from these cards sync automatically." The requested copy is shorter: the card title should be "Cards" and the supporting copy should be "Transactions from assigned cards sync automatically."
What is the root cause of that problem?
WalletPagerenders this card from the shared wallet translation keys, not from inline copy:App/src/pages/settings/Wallet/WalletPage/index.tsx
Lines 718 to 720 in d8068e7
Those translation keys still contain the old English source strings:
App/src/languages/en.ts
Lines 2478 to 2479 in d8068e7
So every Wallet render that uses
walletPage.assignedCardsandwalletPage.assignedCardsDescriptioncontinues to display the previous title and supporting copy.What changes do you think we should make in order to solve the problem?
Update the
walletPage.assignedCardstranslation value toCardsand updatewalletPage.assignedCardsDescriptiontoTransactions from assigned cards sync automatically.Keep the existing
WalletPagecall site unchanged because it already pulls from the correct localization keys. If the PR updates checked-in locale mirrors in the same pass, adjust the correspondingwalletPage.assignedCardsandwalletPage.assignedCardsDescriptionentries so translated builds do not keep the old assigned-card wording.Scope boundaries: files touched should be
src/languages/en.tsatwalletPage.assignedCards/walletPage.assignedCardsDescription, plus the mirroredsrc/languages/*.tslocale entries if the project expects locale files to stay in sync in the same PR. Platforms affected are all platforms through the shared Wallet page. Code paths not touched:src/pages/settings/Wallet/WalletPage/index.tsx,PaymentMethodList, card data loading, card assignment logic, and workspace card management. API/backend behavior changes: none.What alternative solutions did you explore? (Optional)
I considered changing the strings at the
WalletPagesection call site, but that would hardcode UI copy and bypass the existing i18n path. The narrower and project-consistent fix is to update the localization values thatWalletPagealready renders.I did not find any strict human proposal comments to differentiate against. The existing assignee comment asks MelvinBot to create a PR, but it does not contain a competing root-cause or implementation proposal.
[-]Update the copy for "Assigned Cards" card in the Wallet[/-][+][$250] Update the copy for "Assigned Cards" card in the Wallet[/+]melvin-bot commentedon May 18, 2026
Job added to Upwork: https://www.upwork.com/jobs/~022056320492269614859
aswin-s commentedon May 18, 2026
Proposal
What is the root cause of that problem?
The Wallet page renders the "Assigned Cards" section using
translate('walletPage.assignedCards')for the title andtranslate('walletPage.assignedCardsDescription')for the description insrc/languages/en.ts(lines 2478–2479). The current copy ("Assigned cards" / "Transactions from these cards sync automatically.") does not match the requested copy ("Cards" / "Transactions from assigned cards sync automatically.").What changes do you think we should make in order to solve the problem?
src/languages/en.ts(line 2478), changeassignedCards: 'Assigned cards'→assignedCards: 'Cards'.src/languages/en.ts(line 2479), changeassignedCardsDescription: 'Transactions from these cards sync automatically.'→assignedCardsDescription: 'Transactions from assigned cards sync automatically.'.walletPage.assignedCardsandwalletPage.assignedCardsDescriptionentries in every other locale file undersrc/languages/(es.ts,fr.ts,nl.ts,pl.ts,ja.ts, etc.) so localized copy stays in sync with the new English wording.help/ref/settings/wallet/index.md(line 40) heading from## Assigned Cards→## Cardsso the Help Center mirrors the new wallet label.WalletPagealready consumes these two keys viatranslate(), so updating the translation values propagates to the UI automatically.What alternative solutions did you explore?
Renaming the key from
assignedCardstocardswas considered but rejected — it would churn ~63 references across locale files and unrelated screens (e.g. ExpensifyCardPage) for no user-visible benefit; updating the value in place is the minimal, safe change.flaviadefaria commentedon May 18, 2026
@marufsharifi this is a pretty straightforward change. I asked Melvin to create the PR so you only need to review it.
github-actions commentedon May 18, 2026
Abdulloh0109 commentedon May 18, 2026
Proposal
What is the root cause of that problem?
The Wallet page renders the assigned-cards section header and subtitle by pulling from two translation keys —
walletPage.assignedCardsandwalletPage.assignedCardsDescription— viatranslate()atsrc/pages/settings/Wallet/WalletPage/index.tsx#L679-L680. The English source values for those two keys atsrc/languages/en.ts#L2462-L2463still hold the old copy:'Assigned cards'and'Transactions from these cards sync automatically.'. Because the component reads directly from these keys, no UI change is possible without updating the source strings.What changes do you think we should make in order to solve the problem?
Update only
src/languages/en.ts:assignedCardsvalue from'Assigned cards'to'Cards'assignedCardsDescriptionvalue from'Transactions from these cards sync automatically.'to'Transactions from assigned cards sync automatically.'No changes are needed to
WalletPage/index.tsx— it already consumes the correct keys. Non-English locale files (es.ts,fr.ts,de.ts,it.ts,ja.ts,nl.ts,pl.ts,pt-BR.ts,zh-hans.ts) each have their own translated values for the same two keys; those translations are managed by the translations team and are out of scope for this PR. Platforms affected: all (shared translation path). No API, Onyx, or navigation changes required.What alternative solutions did you explore? (Optional)
I considered renaming the key from
assignedCardstocards, butassignedCardsis also used in unrelated contexts — e.g. the card-list grouping filter atsrc/languages/en.ts#L5592— so renaming would require touching multiple unrelated call sites for no user-visible gain. Updating the value in place is the minimal, safe change.The existing proposal from @aswin-s also suggests updating
help/ref/settings/wallet/index.md. I checked and that file is HelpDot documentation maintained separately from the app translation pipeline; whether it needs updating is a separate scope decision and should not block this copy-only fix.Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.
33 remaining items
melvin-bot commentedon May 26, 2026
@marufsharifi Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!
marufsharifi commentedon May 27, 2026
Don't overdue, no Bug zero checklist needed.
melvin-bot commentedon May 28, 2026
Triggered auto assignment to @mallenexpensify (
Awaiting Payment)melvin-bot commentedon May 28, 2026
Payment Summary
Upwork Job
BugZero Checklist (@mallenexpensify)
mallenexpensify commentedon May 29, 2026
Payment Summary
Contributor+: @marufsharifi paid $250 via NewDot
@marufsharifi can you please accept the job below? Please reply here and tag me once you have.
https://www.upwork.com/jobs/~022056320492269614859
marufsharifi commentedon May 31, 2026
@mallenexpensify, I've accepted the offer. thanks.
melvin-bot commentedon Jun 1, 2026
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸
mallenexpensify commentedon Jun 1, 2026
@marufsharifi paid, summary updated above. Thx.