Report virtual card fraud verify magic code to use navigation - #70813
Conversation
|
@ishpaul777 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
I think I found a bug in the flow, but would like to confirm before changing it. If a wrong magic code is entered there is a mismatch between keys coming from the backend and expected on the FE. Please see the video. The key form BE: Currently if you enterd wrong magic code you get pretty much undismissable error :( 0047.invalid.onyx.key.mov |
|
@jmusial What is the name of the API call used? |
response in the code: |
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppScreen.Recording.2025-09-26.at.8.24.42.PM.movAndroid: mWeb ChromeScreen.Recording.2025-09-26.at.8.26.32.PM.moviOS: HybridAppScreen.Recording.2025-09-26.at.12.26.32.PM.moviOS: mWeb SafariScreen.Recording.2025-09-26.at.4.14.35.AM.movMacOS: Chrome / SafariScreen.Recording.2025-09-26.at.3.51.20.AM.movMacOS: DesktopScreen.Recording.2025-09-26.at.8.42.23.PM.mov |
| title={translate('cardPage.validateCardTitle')} | ||
| descriptionPrimary={translate('cardPage.enterMagicCode', {contactMethod: primaryLogin})} | ||
| sendValidateCode={() => requestValidateCodeAction()} | ||
| validateCodeActionErrorField="revealExpensifyCardDetails" |
There was a problem hiding this comment.
good catch, yes we need to update that to reportVirtualCardFraudForm
There was a problem hiding this comment.
ah ... ok that's one on me ;(
But it needs to be reportVirtualCard I think. At least that's what it was before
There was a problem hiding this comment.
unless what you ment is that you have PR to change that on BE @mountiny ? Cos after my change seems ok
Screen.Recording.2025-09-29.at.15.29.58.mov
There was a problem hiding this comment.
@jmusial I wonder if we should change it to reportVirtualCardFraudForm as it's aligned with the other keys that have the Form at the end?
There was a problem hiding this comment.
I can do that, but would need to sync it with backend change, otherwise it won't work
There was a problem hiding this comment.
Ah ok so that was not an issue in main so it works there haha I see
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.2.21-0 🚀
|
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.2.21-4 🚀
|
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.2.21-4 🚀
|

Explanation of Change
This PR rewrites Expensify card fraud reporting verification to use navigation instead of modals.
Fixed Issues
$ #69171
PROPOSAL:
N/A
Tests
Pre requisite: have an account with at least one Expensify card created and assigned.
Offline tests
N/A
QA Steps
Same as tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
0047.Android.native.mov
Android: mWeb Chrome
0047.Andorid.chrome.mov
iOS: Native
0047.ios.native.mp4
iOS: mWeb Safari
0047.ios.safari.mp4
MacOS: Chrome / Safari
0047.desktop.chrome.mov
0047.desktop.chrome.fail.mov
MacOS: Desktop
0047.desktop.native.mov