Skip to content

[HOLD for payment 2024-08-07] [QBO Export] Implement offline pattern B for manual report exports #43040

Closed

Description

@arosiclair

Part of QBO Export and Error Handling in NewDot

Doc section: https://docs.google.com/document/d/1aQl-AK_F6IqszWYG2aEllTsD5x3h4b8Zu0XEG0LuQ08/edit#heading=h.xw0s9oqvo44s
Project: [#whatsnext] #wave-collect

Feature Description

During review for the detailed design, we decided we should support offline pattern B when manually exporting reports here. To implement that we need to

  • Create an optimistic EXPORTINTEGRATION action in our Report.exportToIntegration and Report.markAsManuallyExported actions
    • The text should say started exporting this report to {integration}...
  • Pass the optimisticReportActionID to both Report_Export and MarkAsExported APIs
  • Use the ID to create the action in Auth
    • Auth will queue updates for the report action with the final text: exported this report to {integration}. [View out-of-pocket expenses].
  • On failure
    • create the INTEGRATIONSMESSAGE action with the error message like normal (using a different ID)
    • delete the optimistic action on the frontend using failureData

Manual Test Steps

Sucessful offline export

  1. Submit an expense report
  2. Log in as the workspace admin
  3. Approve the report
  4. Go offline
  5. 3-dot menu > Export > Quickbooks Online
  6. Verify a semi-transparent started exporting this report to QuickBooks Online... message shows
  7. Go online
  8. Verify the action becomes fully opaque
  9. Wait a few seconds
  10. Verify the action updates to exported this report to QuickBooks Online. [View out-of-pocket expenses].

Failed offline export

Prerequisites

  • Add a chart of account (category) to QBO that you can delete later

Steps

  1. Create a report with an expense
  2. Categorize the expense using the new QBO category
  3. Submit it
  4. Log in as the workspace admin and approve the report
  5. Log into QBO and deactivate the chart of account for the category (Menu > Transactions > Chart of accounts > {account} menu > Make inactive)
  6. Go offline in NewDot
  7. Export the report to QBO (3-dot menu > Export > Quickbooks Online)
  8. Verify a semi-transparent started exporting this report to QuickBooks Online... message shows
  9. Go online
  10. Verify the action becomes fully opaque
  11. Wait a few seconds
  12. Verify a report export error message is added the report

Automated Tests

  • Verify optimisticData for the INTEGRATIONSMESSAGE is merged for both Report.exportToIntegration and Report.markAsManuallyExported actions
  • Verify failureData removes the action
Issue OwnerCurrent Issue Owner: @dylanexpensify

Activity

  1. melvin-bot commented on Jun 4, 2024

    @melvin-bot

    Triggered auto assignment to @dylanexpensify (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.

  2. changed the title [-]Implement offline pattern B for manual report exports[/-] [+][HOLD] Implement offline pattern B for manual report exports[/+] on Jun 4, 2024
  3. arosiclair commented on Jun 4, 2024

    @arosiclair
    ContributorAuthor
  4. changed the title [-][HOLD] Implement offline pattern B for manual report exports[/-] [+][HOLD] [QBO Export] Implement offline pattern B for manual report exports[/+] on Jun 6, 2024
  5. moved this to Release 2: Summer 2024 (Aug) in [#whatsnext] #wave-collecton Jun 6, 2024
  6. trjExpensify commented on Jun 6, 2024

    @trjExpensify
    Contributor

    Sounds good, moved it into the release. 👍

  7. dylanexpensify commented on Jun 17, 2024

    @dylanexpensify
    Contributor

    Held!

  8. arosiclair commented on Jun 19, 2024

    @arosiclair
    ContributorAuthor

    Pointed the hold to #44022

  9. changed the title [-][HOLD] [QBO Export] Implement offline pattern B for manual report exports[/-] [+][HOLD #44022] [QBO Export] Implement offline pattern B for manual report exports[/+] on Jun 24, 2024
  10. 38 remaining items

  11. changed the title [-][QBO Export] Implement offline pattern B for manual report exports[/-] [+][HOLD for payment 2024-08-07] [QBO Export] Implement offline pattern B for manual report exports[/+] on Jul 31, 2024
  12. melvin-bot commented on Jul 31, 2024

    @melvin-bot

    Reviewing label has been removed, please complete the "BugZero Checklist".

  13. melvin-bot commented on Jul 31, 2024

    @melvin-bot

    The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.14-6 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-07. 🎊

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

    • @hungvu193 requires payment through NewDot Manual Requests
    • @kosmydel does not require payment (Contractor)
  14. melvin-bot commented on Jul 31, 2024

    @melvin-bot

    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.
    • [@dylanexpensify] Link the GH issue for creating/updating the regression test once above steps have been agreed upon.
  15. dylanexpensify commented on Aug 5, 2024

    @dylanexpensify
    Contributor

    Payment coming up!

  16. melvin-bot commented on Aug 7, 2024

    @melvin-bot

    Payment Summary

    Upwork Job

    • Reviewer: @hungvu193 owed $250 via NewDot
    • Contributor: @kosmydel is from an agency-contributor and not due payment

    BugZero Checklist (@dylanexpensify)

    • 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//hired)
    • I have paid out the Upwork contracts or cancelled the ones that are incorrect
    • I have verified the payment summary above is correct
  17. dylanexpensify commented on Aug 8, 2024

    @dylanexpensify
    Contributor

    Payment summary:

    Please apply/request!

  18. moved this from Release 2: Summer 2024 (Aug) to Done in [#whatsnext] #wave-collecton Aug 8, 2024
  19. JmillsExpensify commented on Aug 14, 2024

    @JmillsExpensify
    Contributor

    $250 approved for @hungvu193

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionDailyKSv2NewFeatureSomething to build that is a new item.

Type

No type

Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions