Reuse existing QBD connection across workspaces#86909
Conversation
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
|
@ahmedGaber93 I've fixed it Screen.Recording.2026-04-06.at.20.14.52.mp4 |
|
Retesting |
|
@lakchote Just to confirm—on native/mWeb, should the “go back” action return to “Connect to QuickBooks Desktop” instead of “Accounting”? 20260406210003646.mp4I think it currently goes back to “Accounting”, since on web, when this screen is opened, QuickBooks is already enabled, so there’s no need to return to the existing connection flow. However, on native/mWeb the flow is different and shows a “cannot connect from this device” message. 20260406210251956.mp4Is this expected behavior, or should we treat it as an issue? |
|
@ahmedGaber93 good point, in other flows we're using the dismiss modal mechanism, but for QBD I think it makes sense to go back to the previous page here. I've updated the code. |
20260407211149437.mp420260407212035398.mp420260407212401307.mp4 |
ahmedGaber93
left a comment
There was a problem hiding this comment.
@lakchote Test again and it works well. All yours!
francoisl
left a comment
There was a problem hiding this comment.
Tested locally and works well, a couple small comments.
| } | ||
|
|
||
| ChangePINATMPage.displayName = 'ChangePINATMPage'; | ||
| ChangePINAtATMPage.displayName = 'ChangePINAtATMPage'; |
There was a problem hiding this comment.
Why are we renaming this in this PR? Is this from a bad conflict resolution?
There was a problem hiding this comment.
Is this from a bad conflict resolution?
No, it's to fix this error that showed up since we've touched the file:
https://github.com/Expensify/App/actions/runs/23917005575/job/69753374824
|
@francoisl ready for review again |
|
🚧 @francoisl has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
✋ 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/francoisl in version: 9.3.55-0 🚀
Bundle Size Analysis (Sentry): |
|
Yes, help site changes are required. PR #86909 introduces a new user-facing flow where users can reuse an existing QuickBooks Desktop connection across workspaces, but the current help article ( I've created a PR with the following updates:
Help site PR: #87438 |
|
Deploy Blocker #87457 was identified to be related to this PR. |
|
🚀 Deployed to staging by https://github.com/francoisl in version: 9.3.57-0 🚀
Bundle Size Analysis (Sentry): |
|
👋 I reviewed the changes in this PR and confirmed that the help site article for QuickBooks Desktop needs updating. What changed: This PR introduces the ability to reuse an existing QBD connection across workspaces. When a user clicks Set up for QBD and already has other workspaces connected to QBD, they now see an intermediate page where they can either select an existing connection to reuse or click Create new connection to go through the full Web Connector setup. Help site impact: The current
Draft PR: #87549 Please review and mark it as "Ready for review" when it looks good. |
|
🚀 Deployed to production by https://github.com/lakchote in version: 9.3.57-1 🚀
|
Explanation of Change
Enables the user to reuse existing QBD connection across workspaces
Fixed Issues
$ #86674
PROPOSAL:
Tests
Video test
Screen.Recording.2026-04-02.at.20.21.52.mov
Offline tests
NA
QA Steps
// TODO: These must be filled out, or the issue title must include "[No QA]."
Same as in tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)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./** comment above it */thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)Screenshots/Videos