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

[$1000] There is a wrong link in the manage your bills #25962

Closed
1 of 6 tasks
m-natarajan opened this issue Aug 25, 2023 · 48 comments
Closed
1 of 6 tasks

[$1000] There is a wrong link in the manage your bills #25962

m-natarajan opened this issue Aug 25, 2023 · 48 comments
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors

Comments

@m-natarajan
Copy link

m-natarajan commented Aug 25, 2023

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Action Performed:

  1. Open the website
  2. Settings > Workspaces
  3. click any workspace from the list
  4. click bills
  5. Observe the text under managing your bills

Expected Result:

There should be a valid link in which the recipients will be sent and a "copy to clipboard" button

Actual Result:

Ask your vendors to forward their invoices to example.com@expensify.cash and we'll scan them for you to pay.

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: 1.3.57-3
Reproducible in staging?: Yes
Reproducible in production?: Yes
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

Screenshare.-.2023-08-15.11_17_27.AM.mp4

Window - (3) New Expensify - Google Chrome

Expensify/Expensify Issue URL:
Issue reported by: @misgana96
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1692087374120429

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~014aec13bc46c67f6b
  • Upwork Job ID: 1696167080456757248
  • Last Price Increase: 2023-09-11
@GItGudRatio
Copy link
Contributor

GItGudRatio commented Aug 25, 2023

Proposal

Please re-state the problem that we are trying to solve in this issue.

The wording and hyperlink is abstract.

What is the root cause of that problem?

This is due to having a TextLink on the email URL by default, if user is from public domain. When clicking on the email we are redirected to the blog post.

<TextLink onPress={() => Link.openExternalLink('https://community.expensify.com/discussion/7500/how-to-pay-your-company-bills-in-expensify/')}>

What changes do you think we should make in order to solve the problem?

We need to refactor this piece of code such that:

  1. No matter if the user is from public domain or company domain, the relevant email is shown using CopyTextToClipboard component.
  2. We can wrap the text workspace.bills.askYourVendorsBeforeEmail and workspace.bills.askYourVendorsAfterEmail in TextLink if we want the whole text to be clickable but the email to be copied via clipboard icon.
    Output:
2023-09-14.00-49-31.mp4

What alternative solutions did you explore? (Optional)

Alternatively, we can:

  1. No matter if the user is from public domain or company domain, the relevant email is shown using CopyTextToClipboard component.
  2. Change the workspace.bills.askYourVendorsAfterEmail and re write to add a new section just for hyperlinking via TextLink.
    Output:
2023-09-14.00-51-01.mp4

@m-natarajan m-natarajan added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Aug 25, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 25, 2023

Triggered auto assignment to @maddylewis (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

@melvin-bot
Copy link

melvin-bot bot commented Aug 25, 2023

Bug0 Triage Checklist (Main S/O)

  • This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
  • This bug is not a duplicate report (check E/App issues and #expensify-bugs)
    • If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead
  • This bug is reproducible using the reproduction steps in the OP. S/O
    • If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
    • If the reproduction steps aren't clear and you determine the correct steps, please update the OP.
  • This issue is filled out as thoroughly and clearly as possible
    • Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.
  • I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@melvin-bot melvin-bot bot added the Overdue label Aug 28, 2023
@maddylewis maddylewis added the External Added to denote the issue can be worked on by a contributor label Aug 28, 2023
@melvin-bot melvin-bot bot changed the title There is a wrong link in the manage your bills [$1000] There is a wrong link in the manage your bills Aug 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

Job added to Upwork: https://www.upwork.com/jobs/~014aec13bc46c67f6b

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Aug 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

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

@maddylewis
Copy link
Contributor

added external label so existing proposal can be reviewed

@melvin-bot melvin-bot bot removed the Overdue label Aug 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

📣 @Al-nitak-external! 📣
Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  2. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  3. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
    Screen Shot 2022-11-16 at 4 42 54 PM
    Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@b4s36t4
Copy link
Contributor

b4s36t4 commented Aug 28, 2023

@maddylewis What is the expected behaviour here? When we click on View All bills we should take the user to dev expensify? or what? can you please put a valid URL here for our reference?

@Al-nitak-external
Copy link

Contributor details
Your Expensify account email: abdelrahmanalbiruni@hotmail.com
Upwork Profile Link: https://www.upwork.com/freelancers/albiruni

@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

✅ Contributor details stored successfully. Thank you for contributing to Expensify!

@talhajavedmukhtar
Copy link
Contributor

talhajavedmukhtar commented Aug 28, 2023

Proposal

Please re-state the problem that we are trying to solve in this issue.

Clicking on bills from within Settings > Workspaces > Worskspace-Name should show the user a relevant email address along the lines of (<user's-email-domain>@expensify.cash) within a Copy-to-Clipboard interface.

What is the root cause of that problem?

Basic:

For all users whose email addresses contain a public domain (like gmail.com; yahoo.com; publicCompanyWebsite.com; etc), the email text is hard-coded to 1) be "example.com@expensify.cash" instead of a domain specific email address AND 2) to lead to the discussion forum, instead of being within a Copy-to-Clipboard component.

Detailed Conjecture:

I believe this part was hard-coded by a developer "to be dealt with later", because making the correct resolution for addresses like marc@yahoo.com requires some thought/discussion. Should it be yahoo.com@expensify.cash OR yahoo@expensify.cash OR ....
The first option doesn't look very pleasing/clean (imo atleast?) while the second leaves room for clashes in cases like "@abc.com vs @abc.edu".

What changes do you think we should make in order to solve the problem?

We need to make a well-thought-out resolver function/class here that resolves to an appropriate "bill receiving" email address against all possible user email addresses. For example marc@lemon.edu and ahmed@lemon.edu should resolve into something like lemon-edu@expensify.cash OR lemon@expensify.cash; whichever is architecturally most convenient for Expensify. We need to be mindful of clashes, etc while designing this resolver.

@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

📣 @talhajavedmukhtar! 📣
Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  2. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  3. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
    Screen Shot 2022-11-16 at 4 42 54 PM
    Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@talhajavedmukhtar
Copy link
Contributor

Contributor details
Your Expensify account email: talha_jav@rocketmail.com
Upwork Profile Link: https://www.upwork.com/freelancers/~014b6101992aa81143

@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

✅ Contributor details stored successfully. Thank you for contributing to Expensify!

@AbubakerShekhani
Copy link

Proposal

Please re-state the problem that we are trying to solve in this issue.

When user clicks on Settings > Workspace > Workspace (select a workplace) > Bills, it displays an email address "example.com@expensify.cash". It should show a valid link with CopyToClipboard option but in this case it is showing "example.com@expensify.cash" which leads to a guide to "Receive Company Bills in Expensify".

What is the root cause of that problem?

The root cause is that the "example.com@expensify.cash" is hardcoded when user.isFromPublicDomain is true which means people coming from email domains such as gmail, yahoo etc (and not company email domains), it shows this hardcoded string along with a link (open in new tab) to a guide "Receive Company Bills in Expensify".

What changes do you think we should make in order to solve the problem?

It seems like this condition is added on purpose for the two types of accounts (Personal and Company account). The "example" email address is kept here as a placeholder that needs to be changed to a "Guide to submitting bills".
OR it should have a different text altogether for users that are coming from public domains (Personal account and not Company account)

What alternative solutions did you explore? (Optional)

N/A

@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

📣 @AbubakerShekhani! 📣
Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork.
Please follow these steps:

  1. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  2. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  3. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
    Screen Shot 2022-11-16 at 4 42 54 PM
    Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

@AbubakerShekhani
Copy link

📣 @AbubakerShekhani! 📣 Hey, it seems we don’t have your contributor details yet! You'll only have to do this once, and this is how we'll hire you on Upwork. Please follow these steps:

  1. Get the email address used to login to your Expensify account. If you don't already have an Expensify account, create one here. If you have multiple accounts (e.g. one for testing), please use your main account email.
  2. Get the link to your Upwork profile. It's necessary because we only pay via Upwork. You can access it by logging in, and then clicking on your name. It'll look like this. If you don't already have an account, sign up for one here.
  3. Copy the format below and paste it in a comment on this issue. Replace the placeholder text with your actual details.
    Screen Shot 2022-11-16 at 4 42 54 PM
    Format:
Contributor details
Your Expensify account email: <REPLACE EMAIL HERE>
Upwork Profile Link: <REPLACE LINK HERE>

Contributor details
Your Expensify account email: abubakershekhani@yahoo.com
Upwork Profile Link: https://www.upwork.com/freelancers/~01d5969bc1374cc80e

@melvin-bot
Copy link

melvin-bot bot commented Aug 28, 2023

✅ Contributor details stored successfully. Thank you for contributing to Expensify!

@melvin-bot melvin-bot bot added the Overdue label Aug 30, 2023
@maddylewis
Copy link
Contributor

@allroundexperts - lmk if you have availability to review the proposals for this one! if not, I'll reach out to another C+ to get started. ty!

@melvin-bot melvin-bot bot added the Overdue label Sep 11, 2023
@melvin-bot
Copy link

melvin-bot bot commented Sep 11, 2023

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@maddylewis
Copy link
Contributor

sorry, working on a few other things rn but will try to follow up on this before EOD

@melvin-bot melvin-bot bot removed the Overdue label Sep 11, 2023
@maddylewis
Copy link
Contributor

maddylewis commented Sep 12, 2023

alright, sorry for the delay here.

Ask your vendors to forward their invoices to example.com@expensify.cash and we'll scan them for you to pay.

This is expected behavior. That's the instruction to have vendor bills forwarded to someone's Expensify account.

When we click on View All bills we should take the user to dev expensify? or what? can you please put a valid URL here for our reference?

When clicking "View all bills" you should be taken to OldDot > the reports page > and filter bills. I don't have any bills in this account which is why 0 reports show:

2023-09-12_18-22-19.mp4
image

that said, i think this is actually working as expected and any changes to this behavior would touch OldDot / should be considered a new feature request.

@maddylewis
Copy link
Contributor

@allroundexperts - based on those details, what do you think? i think we can actually close this one but would love your input.

@misgana96
Copy link

Ask your vendors to forward their invoices to example.com@expensify.cash and we'll scan them for you to pay.

@maddylewis But when clicking the link it goes to external page which is a blog. Is it expected?

@allroundexperts
Copy link
Contributor

I think it should not redirect to a blog page when clicking on the link. @maddylewis Can you please confirm this specific detail?

If that is expected, then I think we're good to close this!

@misgana96
Copy link

Screencast.from.13-09-2023.3.01.45.webm

@maddylewis
Copy link
Contributor

But when clicking the link it goes to external page which is a blog.

Will you tell me exactly what you are clicking that takes you to the community page? but, yes, that's our resource on paying bills in expensify, so that's expected.

@misgana96
Copy link

But when clicking the link it goes to external page which is a blog.

Will you tell me exactly what you are clicking that takes you to the community page? but, yes, that's our resource on paying bills in expensify, so that's expected.

Action Performed:
2. Open the website(https://new.expensify.com/)
3. Settings > Workspaces
4. click any workspace from the list
5. click bills
6. Click the link from Ask your vendors to forward their invoices to example.com@expensify.cash and we'll scan them for you to pay.

@misgana96
Copy link

Screenshare.-.2023-09-13.9_38_53.PM.mp4

@maddylewis
Copy link
Contributor

Okay, so you're clicking the example email address/the text above it and that's what takes you to the help doc. The only thing I would suggest updating is the hyperlink.

Ask your vendors to forward their invoices to exampledomain@expenisfy.cash and we'll scan them for you to pay. More details on this feature are here.

Or

Ask your vendors to forward their invoices to exampledomain@expenisfy.cash and we'll scan them for you to pay.

@misgana96
Copy link

Okay, so you're clicking the example email address/the text above it and that's what takes you to the help doc. The only thing I would suggest updating is the hyperlink.

Ask your vendors to forward their invoices to exampledomain@expenisfy.cash and we'll scan them for you to pay. More details on this feature are here.

Or

Ask your vendors to forward their invoices to exampledomain@expenisfy.cash and we'll scan them for you to pay.

I feel the same thing. The only thing to do is just update the hyperlink

@GItGudRatio
Copy link
Contributor

Proposal Updated

@allroundexperts

This comment was marked as outdated.

@melvin-bot
Copy link

melvin-bot bot commented Sep 14, 2023

Triggered auto assignment to @nkuoch, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@AbubakerShekhani
Copy link

AbubakerShekhani commented Sep 14, 2023

I would agree that @Sourcecodedeveloper was first to suggest changing the hyperlink text in there proposal. As such, let's

Sorry, this is not the case.

@allroundexperts I was the first one to suggest that the link is fine and the text needs to be changed.

@maddylewis @MelvinBot

Check my proposal dated: 28th August, 2023
#25962 (comment)

@allroundexperts
Copy link
Contributor

Thanks for pointing out @AbubakerShekhani. I just checked again and it seems like I missed your proposal due to the long conversation happening here. You indeed suggested this first.

Let's go with @AbubakerShekhani's proposal.

🎀 👀 🎀 C+ reviewed

@melvin-bot
Copy link

melvin-bot bot commented Sep 14, 2023

Current assignee @nkuoch is eligible for the choreEngineerContributorManagement assigner, not assigning anyone new.

@AbubakerShekhani
Copy link

Thanks for pointing out @AbubakerShekhani. I just checked again and it seems like I missed your proposal due to the long conversation happening here. You indeed suggested this first.

Let's go with @AbubakerShekhani's proposal.

🎀 👀 🎀 C+ reviewed

Thank you for the prompt response.
Please let me know if it needs any further steps from my end.

@allroundexperts
Copy link
Contributor

Let's wait for the internal engineer to make the final decision. Then you can proceed to the PR.

@melvin-bot
Copy link

melvin-bot bot commented Sep 15, 2023

@nkuoch @allroundexperts @maddylewis this issue is now 3 weeks old. There is one more week left before this issue breaks WAQ and will need to go internal. What needs to happen to get a PR in review this week? Please create a thread in #expensify-open-source to discuss. Thanks!

@maddylewis
Copy link
Contributor

tbh, i don't think we should update this. the community post that is linked to the existing text is going to be outdated in the next few weeks after the Community to HelpDot migration is complete.

we'll be mass-updating a ton of in-product links then, and i think we can just hold off on this one until then.

@melvin-bot melvin-bot bot added the Overdue label Sep 18, 2023
@maddylewis
Copy link
Contributor

closing since we'll be mass updating links in the next couple of weeks.

@melvin-bot melvin-bot bot removed the Overdue label Sep 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors
Projects
None yet
Development

No branches or pull requests

10 participants