Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[HOLD for payment 2024-08-29] [QBO Export] [$250] Display QBO auto-sync errors and RBRs in NewDot #44016

Closed
arosiclair opened this issue Jun 19, 2024 · 28 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 External Added to denote the issue can be worked on by a contributor NewFeature Something to build that is a new item.

Comments

@arosiclair
Copy link
Contributor

arosiclair commented Jun 19, 2024

Part of QBO Export and Error Handling in NewDot

Main issue: https://github.com/Expensify/Expensify/issues/350150
Doc section: https://docs.google.com/document/d/1aQl-AK_F6IqszWYG2aEllTsD5x3h4b8Zu0XEG0LuQ08/edit#heading=h.pmmx5zp5s75j
Project: #wave-collect

Feature Description

As described in the doc, we need to display a RBR when there are errors in a policy connection’s last sync.

The RBR will show on the path to the integration connection settings (Avatar > Workspaces > [Workspace name] > Accounting > Connections):

  • LHN Avatar: check if policy.connection.lastSync.isSuccessful is false in the Indicator
  • InitialSettingsPage: add the same check to hasGlobalWorkspaceSettingsRBR
  • WorkspaceInitialPage: add the same check to the connections menu item here
  • PolicyAccountingPage: use policy.connection.lastSync.errorMessage to populate the errorText option for the QBO menu item here

When the error is a credentials error (policy.connection.lastSync.isAuthenticationError is true), we’ll replace the ‘Sync now’ option in the connection’s 3-dot menu with a ‘Reconnect’ option here. The option will restart the Quickbooks Auth flow as described in our initial QBO doc.

Manual Test Steps

Prerequisites

  • Collect workspace with an admin and member
  • Setup QBO integration connection

Steps

  1. Log into QBO and disconnect the Expensify app (Menu > Apps > Overview > Expensify 3-dot menu > Disconnect)
  2. Log into NewDot as the admin
  3. Verify there's a RBR on the path: Avatar > Workspaces > [Workspace name] > Accounting > QBO
  4. Verify a red error message appears on the connection explaining the issue
  5. Select QBO’s 3-dot menu
  6. Verify there’s a “Enter credentials” option
  7. Select “Enter credentials”
  8. Verify a new window opens to log into QBO

Automated Tests

  • Add a test to IS verifying errorMessage and isAuthenticationError are set on the IntegrationLastSync
  • Add an Auth test for SavePolicy verifying that an INTEGRATIONSMESSAGE action gets posted to the #admins room when the last sync is a failure
Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01cc92666d46e99569
  • Upwork Job ID: 1803462924011290436
  • Last Price Increase: 2024-06-19
Issue OwnerCurrent Issue Owner: @muttmuure
@arosiclair arosiclair added External Added to denote the issue can be worked on by a contributor Daily KSv2 NewFeature Something to build that is a new item. labels Jun 19, 2024
@arosiclair arosiclair self-assigned this Jun 19, 2024
Copy link

melvin-bot bot commented Jun 19, 2024

Job added to Upwork: https://www.upwork.com/jobs/~01cc92666d46e99569

@melvin-bot melvin-bot bot changed the title [HOLD] Display QBO auto-sync errors and RBRs in NewDot [$250] [HOLD] Display QBO auto-sync errors and RBRs in NewDot Jun 19, 2024
@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Jun 19, 2024
Copy link

melvin-bot bot commented Jun 19, 2024

Triggered auto assignment to Contributor-plus team member for initial proposal review - @ishpaul777 (External)

Copy link

melvin-bot bot commented Jun 19, 2024

Triggered auto assignment to @puneetlath (NewFeature), see https://stackoverflowteams.com/c/expensify/questions/14418#:~:text=BugZero%20process%20steps%20for%20feature%20requests for more details. Please add this Feature request to a GH project, as outlined in the SO.

@melvin-bot melvin-bot bot added the Weekly KSv2 label Jun 19, 2024
Copy link

melvin-bot bot commented Jun 19, 2024

⚠️ It looks like this issue is labelled as a New Feature but not tied to any GitHub Project. Keep in mind that all new features should be tied to GitHub Projects in order to properly track external CAP software time ⚠️

Copy link

melvin-bot bot commented Jun 19, 2024

Triggered auto assignment to Design team member for new feature review - @dubielzyk-expensify (NewFeature)

@arosiclair arosiclair removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Jun 19, 2024
@trjExpensify trjExpensify changed the title [$250] [HOLD] Display QBO auto-sync errors and RBRs in NewDot [QBO Export] [$250] [HOLD #44015] Display QBO auto-sync errors and RBRs in NewDot Jun 19, 2024
@puneetlath puneetlath removed their assignment Jun 20, 2024
@ishpaul777
Copy link
Contributor

ishpaul777 commented Jul 3, 2024

weekly update: Still held on #44015

@lakchote lakchote changed the title [QBO Export] [$250] [HOLD #44015] Display QBO auto-sync errors and RBRs in NewDot [QBO Export] [$250] Display QBO auto-sync errors and RBRs in NewDot Jul 11, 2024
@lakchote
Copy link
Contributor

Not held on #44015 anymore.

@arosiclair arosiclair added NewFeature Something to build that is a new item. and removed NewFeature Something to build that is a new item. labels Aug 20, 2024
Copy link

melvin-bot bot commented Aug 20, 2024

Triggered auto assignment to @muttmuure (NewFeature), see https://stackoverflowteams.com/c/expensify/questions/14418#:~:text=BugZero%20process%20steps%20for%20feature%20requests for more details. Please add this Feature request to a GH project, as outlined in the SO.

@arosiclair
Copy link
Contributor Author

I believe this will only need payment for @hungvu193's C+ reviews on these two PRs:

but that's after deploy and the regression period.

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Aug 22, 2024
@melvin-bot melvin-bot bot changed the title [QBO Export] [$250] Display QBO auto-sync errors and RBRs in NewDot [HOLD for payment 2024-08-29] [QBO Export] [$250] Display QBO auto-sync errors and RBRs in NewDot Aug 22, 2024
Copy link

melvin-bot bot commented Aug 22, 2024

The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.23-0 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2024-08-29. 🎊

For reference, here are some details about the assignees on this issue:

  • @hungvu193 requires payment through NewDot Manual Requests

Copy link

melvin-bot bot commented Aug 22, 2024

BugZero Checklist: The PR adding this new feature has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

  • [@hungvu193] Please propose regression test steps to ensure the new feature will work correctly on production in further releases.
  • [@muttmuure] Link the GH issue for creating/updating the regression test once above steps have been agreed upon.

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Aug 28, 2024
Copy link

melvin-bot bot commented Aug 29, 2024

Payment Summary

Upwork Job

BugZero Checklist (@muttmuure)

  • I have verified the correct assignees and roles are listed above and updated the neccesary manual offers
  • I have verified that there are no duplicate or incorrect contracts on Upwork for this job (https://www.upwork.com/ab/applicants/1803462924011290436/hired)
  • I have paid out the Upwork contracts or cancelled the ones that are incorrect
  • I have verified the payment summary above is correct

@hungvu193
Copy link
Contributor

Regression test:

Prerequisites:

  • Collect workspace with an admin and member
  • Setup QBO (Xero) integration connection

Steps:

  1. Log into QBO (Xero) and disconnect the Expensify app: Menu > Apps > Overview > Expensify 3-dot menu > Disconnect (Xero: 9 dots menu > Manage app connections -> Disconnect)
  2. Log into NewDot as the admin
  3. Verify there's an RBR on the path: Avatar > Workspaces > [Workspace name] > Accounting > QBO (Xero)
  4. Verify a red error message appears on the connection explaining the issue
  5. Select QBO's (Xero's) 3-dot menu
  6. Verify there’s a “Enter credentials” option
  7. Select “Enter credentials”
  8. Verify a new window opens to log into QBO (Xero)
  9. Enter the credentials and verify that you can connect to QBO (Xero) successfully.

Change integration:

  1. Go to Accounting settings.
  2. Open Other integrations.
  3. Press connect.
  4. Verify there is a confirmation modal.
  5. Verify the flow is running correctly after pressing Confirm.
  6. Verify new integration connection
  7. All Connect buttons and integration flows were refactored. Verify that it is possible to add each integration:
  • quickbooksOnline,
  • xero,
  • netsuite
  • intact

@hungvu193
Copy link
Contributor

Based on the scope that was added to #45251, Can I request a raise for the bounty of this issue 😄 ?

@melvin-bot melvin-bot bot added the Overdue label Aug 30, 2024
Copy link

melvin-bot bot commented Sep 2, 2024

@arosiclair, @hungvu193, @muttmuure Huh... This is 4 days overdue. Who can take care of this?

@muttmuure
Copy link
Contributor

reviewing this tomorrow

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Sep 3, 2024
@muttmuure
Copy link
Contributor

How many PRs did you review in total?

@melvin-bot melvin-bot bot removed the Overdue label Sep 6, 2024
@hungvu193
Copy link
Contributor

We have 2 PRs:

The first one (#45251) is a big PR, and we also added a lot of reactors to reuse the code.

@muttmuure
Copy link
Contributor

Would $750 be about right?

@hungvu193
Copy link
Contributor

Yes. Lovely 💪

@muttmuure
Copy link
Contributor

$750 - @hungvu193

@muttmuure
Copy link
Contributor

Added regression test. Please go ahead and request payment through ND

@garrettmknight
Copy link
Contributor

$750 approved for @hungvu193

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 External Added to denote the issue can be worked on by a contributor NewFeature Something to build that is a new item.
Projects
Status: Done
Development

No branches or pull requests

8 participants