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

[$500] [HOLD for payment 2024-08-19] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace #40438

Closed
cristipaval opened this issue Apr 18, 2024 · 60 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

@cristipaval
Copy link
Contributor

cristipaval commented Apr 18, 2024

Part of the Invoicing V0.3 project

Main issue: https://github.com/Expensify/Expensify/issues/341717
Doc section: Invoicing V1
Project: #vip-billpay

Feature Description

Implement the Pay as business option in the App for the individuals who are admin of their primary workspace. This also includes calling the PayInvoice API command.

Manual Test Steps

Automated Tests

Issue OwnerCurrent Issue Owner: @
Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01d3f5acd99a5e211f
  • Upwork Job ID: 1825773836120920532
  • Last Price Increase: 2024-08-20
  • Automatic offers:
    • jjcoffee | Reviewer | 103598175
@cristipaval cristipaval added the NewFeature Something to build that is a new item. label Apr 18, 2024
Copy link

melvin-bot bot commented Apr 18, 2024

Triggered auto assignment to @kadiealexander (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 Apr 18, 2024
@cristipaval cristipaval changed the title CRITICAL: Add Pay as Business option for invoices sent to an individual [HOLD] CRITICAL: Add Pay as Business option for invoices sent to an individual Apr 18, 2024
@melvin-bot melvin-bot bot added the Overdue label Apr 26, 2024
@kadiealexander
Copy link
Contributor

@cristipaval any updates here?

@melvin-bot melvin-bot bot removed the Overdue label Apr 29, 2024
@cristipaval
Copy link
Contributor Author

Still held. This is part of Invoicing V0.2. We'll get to this when Invoicing V0.1 is done.

@melvin-bot melvin-bot bot added the Overdue label May 7, 2024
@kadiealexander
Copy link
Contributor

Still on hold! Shifting to monthly while we wait for V2.

@melvin-bot melvin-bot bot removed the Overdue label May 8, 2024
@kadiealexander kadiealexander added Monthly KSv2 and removed Weekly KSv2 labels May 8, 2024
@cristipaval cristipaval changed the title [HOLD] CRITICAL: Add Pay as Business option for invoices sent to an individual [HOLD] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace May 10, 2024
@cristipaval cristipaval added Weekly KSv2 and removed Monthly KSv2 labels May 14, 2024
@kadiealexander
Copy link
Contributor

No longer on hold!

@kadiealexander kadiealexander changed the title [HOLD] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace May 15, 2024
@kadiealexander kadiealexander changed the title CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace [HOLD FOR #40437] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace May 15, 2024
@kadiealexander
Copy link
Contributor

Actually, still on hold!

@VickyStash
Copy link
Contributor

Hi, I'm Viktoryia from Callstack - expert contributor group - and I would like to work on this issue.

@VickyStash
Copy link
Contributor

@shawnborton If I paid the invoice as a business:

  1. Should the report preview say that I paid the invoice or should it say that my workspace paid the invoice (ex: viktoryia.kliushun+2 @callstack.com paid or Vik's Workspace paid):
    IMG1.

IMG22

  1. Should the invoice report preview avatars be updated to be workspace-to-workspace same way as the room avatars are updated? Same question for all previously/future created invoices in the room?

@VickyStash
Copy link
Contributor

Updates:

  • Updated SettlementButton component and IOU.payInvoice method to support paying as a business
  • Updated getPayMoneyRequestParams function to change invoice room from B2C to B2B
  • Fixed getPrimaryPolicy method

Waiting for some design clarifications to make sure UI looks as expected.

@shawnborton
Copy link
Contributor

Should the report preview say that I paid the invoice or should it say that my workspace paid the invoice (ex: viktoryia.kliushun+2 @callstack.com paid or Vik's Workspace paid):

Good question, I think it would say Workspace paid. We already do this for submitting expenses, when your workspace pays you back and not the individual who approved/paid within the workspace:
CleanShot 2024-05-23 at 11 45 41@2x

Should the invoice report preview avatars be updated to be workspace-to-workspace same way as the room avatars are updated? Same question for all previously/future created invoices in the room?

So are you saying that if the invoice receiver choses to pay via a business bank account, and we update that invoice to be workspace-to-workspace, right? In that case, yes, we should update all of the avatars to reflect the nature of it being workspace-to-workspace.

@VickyStash
Copy link
Contributor

@shawnborton @cristipaval

  1. Could you please also clarify this use case: I have a workspace-to-individual invoice room with three open invoices. And I pay invoice number 2 using business bank account. The room turns into workspace-to-workspace room. So invoices 1 and 3 will have workspace-to-workspace avatars and will say "Workspace A owes:" instead of "viktoryia.kliushun@callstack.com owes:", right?
    image

  1. In case of Workspace expenses, when a workspace pays the expense, inside the expense view we have a message that the individual paid expense using something:
    image
    How this message should look like for the invoice paid by BBA?

@VickyStash
Copy link
Contributor

Updates:

  • Working on UI updates for workspace-to-workspace invoices rooms

@melvin-bot melvin-bot bot added the Awaiting Payment Auto-added when associated PR is deployed to production label Aug 12, 2024
@melvin-bot melvin-bot bot changed the title CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace [HOLD for payment 2024-08-19] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace Aug 12, 2024
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Aug 12, 2024
Copy link

melvin-bot bot commented Aug 12, 2024

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

Copy link

melvin-bot bot commented Aug 12, 2024

The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.18-10 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-19. 🎊

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

  • @VickyStash does not require payment (Contractor)
  • @jjcoffee requires payment (Needs manual offer from BZ)

Copy link

melvin-bot bot commented Aug 12, 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:

  • [@jjcoffee] Please propose regression test steps to ensure the new feature will work correctly on production in further releases.
  • [@kadiealexander] 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 Overdue and removed Weekly KSv2 labels Aug 18, 2024
@jjcoffee
Copy link
Contributor

Regression Test Proposal

  1. Login to the app as User A. The user should be the admin of any workspace.
  2. Go to FAB -> Select "Send invoice"
  3. Send an invoice of any amount to User B (who should be the admin of his primary workspace)
  4. Login as User B and open the invoice room from step 3.
  5. Tap the Pay button and select Pay as business -> Pay elsewhere
  6. Verify that:
  • the invoice got paid
  • the room is turned into a B2B invoices room, the title and avatars reflect the workspace names and any custom avatars.
  1. Login as User A and open the same invoice room. Verify against step 6.

Do we agree 👍 or 👎

@jjcoffee
Copy link
Contributor

@kadiealexander I'd like to request a payment boost here to $500, if possible. There was a large amount of work and time involved in testing and retesting this, and there were essentially two PRs to test as the first got reverted (due I think mostly to this issue that I don't think could reasonably be caught by the reviewer's checklist!). Thanks for the consideration! 🙏

@cristipaval
Copy link
Contributor Author

cristipaval commented Aug 19, 2024

Oh yes, @kadiealexander, this is a CRITICAL feature for Invoicing, it definitely qualifies for $500.

Copy link

melvin-bot bot commented Aug 19, 2024

Payment Summary

Upwork Job

  • Contributor: @VickyStash is from an agency-contributor and not due payment
  • ROLE: @jjcoffee paid $500

BugZero Checklist (@kadiealexander)

  • 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

@kadiealexander kadiealexander added the External Added to denote the issue can be worked on by a contributor label Aug 20, 2024
Copy link

melvin-bot bot commented Aug 20, 2024

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

@melvin-bot melvin-bot bot changed the title [HOLD for payment 2024-08-19] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace [$250] [HOLD for payment 2024-08-19] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace Aug 20, 2024
@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Aug 20, 2024
Copy link

melvin-bot bot commented Aug 20, 2024

Current assignee @jjcoffee is eligible for the External assigner, not assigning anyone new.

@melvin-bot melvin-bot bot removed the Overdue label Aug 20, 2024
@melvin-bot melvin-bot bot removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Aug 20, 2024
Copy link

melvin-bot bot commented Aug 20, 2024

📣 @jjcoffee 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job

@kadiealexander
Copy link
Contributor

@jjcoffee let me know when you've accepted the offer :)

@kadiealexander kadiealexander changed the title [$250] [HOLD for payment 2024-08-19] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace [$500] [HOLD for payment 2024-08-19] CRITICAL: Add Pay as Business option for invoices sent to an individual who is admin of their primary workspace Aug 20, 2024
Copy link

melvin-bot bot commented Aug 20, 2024

Upwork job price has been updated to $500

@jjcoffee
Copy link
Contributor

@kadiealexander Thanks Kadie, I've accepted the offer! 🙏

@kadiealexander
Copy link
Contributor

Paid!

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
Development

No branches or pull requests

6 participants