Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.34k stars 2.77k forks source link

Add Merge Account to NewExpensify #47073

Open zanyrenney opened 1 month ago

zanyrenney commented 1 month ago

DESIGN DOC ➡️

Proposal

Tasks

Issue OwnerCurrent Issue Owner: @zanyrenney
melvin-bot[bot] commented 1 month ago

Current assignees @twisterdotcom and @zanyrenney are eligible for the NewFeature assigner, not assigning anyone new.

melvin-bot[bot] commented 1 month ago

:warning: 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 :warning:

melvin-bot[bot] commented 1 month ago

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

zanyrenney commented 1 month ago

Edited by proposal-police: This proposal was edited at 2024-08-19 15:59:41 UTC.

Need to improve this but startign with the P/S

Proposal: add the remaining account settings to new dot, Part 1: Merge Account (Part 2: Device Management TBC)

Problem:

When users accidentally create personal accounts while their company is using Expensify, they face several issues. They must either:

Generally, users can’t share reports directly with their company in-app, and managing two accounts can be confusing. Users might also unknowingly create expenses that don't align with company policies.

Solution:

Rebuild the ability to "Merge Accounts" in NewExpensify. This feature allows users to easily merge their personal and company accounts on Expensify.

This will improve the transfer from individual expense data to company-created accounts, giving visibility to admins and mitigating the need to create a novel account for those originally creating individual accounts.

zanyrenney commented 1 month ago

Pre-design on merging accounts for workspace feed/card conversation: https://expensify.slack.com/archives/C036QM0SLJK/p1723841346915409

zanyrenney commented 1 month ago

Proposal: Add the remaining account settings to NewExpensify.

Part 1: Merge Account Part 2: Consider implications for this on Device Management (TBC)

Problem:

When users accidentally create personal accounts while their company is using Expensify, they face several issues. They must either:

Generally, users can’t share reports directly with their company in-app, and managing two accounts can be confusing. Users might also unknowingly create expenses that don't align with company policies.

Solution:

Rebuild the ability to "Merge Accounts" in NewExpensify. This feature allows users to easily merge their personal and company accounts on Expensify.

This will improve the transfer from individual expense data to company-created accounts, giving visibility to admins and mitigating the need to create a novel account for those originally creating individual accounts, and crucially, give them the ability to do take this action without requiring access to Expensify Classic.

github-actions[bot] commented 1 month ago

@zanyrenney Your proposal will be dismissed because you did not follow the proposal template.

zanyrenney commented 1 month ago

This is a bit mean, I haven't even done it yet 🥲

zanyrenney commented 1 month ago

https://github.com/search?q=org:Expensify+%22merge+account%22&type=Code

zanyrenney commented 4 weeks ago

https://github.com/search?q=org:Expensify+%22merge+account%22&type=Code https://github.com/Expensify/Web-Expensify/blob/main/script/bwm/HandleBackgroundTasksOnMergeAccount.php https://github.com/Expensify/Auth/blob/main/auth/command/MergeAccount.cpp

zanyrenney commented 4 weeks ago

Not sure we need @dannymcclain here yet so will remove this from clogging up his K2.

zanyrenney commented 4 weeks ago

2024-08-20_17-35-28

zanyrenney commented 4 weeks ago

@twisterdotcom and I considered getting the pre-design out today or tomorrow but I realised we need to email strat@ prior, so done that and then can get the pre-design in flight!

twisterdotcom commented 2 weeks ago

Back from some OOO. @zanyrenney has been predesigning in a canvas in my absence.

zanyrenney commented 2 weeks ago

pre-design is posted! https://expensify.slack.com/archives/C06ML6X0W9L/p1725276863731789

zanyrenney commented 1 week ago

Going to get some mock help due to the time pressure on this!

zanyrenney commented 1 week ago

reassigning @dannymcclain

zanyrenney commented 1 week ago

Figma file for reference: https://www.figma.com/design/bHql8diuUEo4HktqZULhLY/Merge-Accounts?node-id=4-4221&node-type=CANVAS&t=d52rTOi706bLXkWx-0

zanyrenney commented 1 week ago

Sync with Danny to go over this today cc @dannymcclain

Then hoping to share a visual pre-d and then move ahead with HL.

zanyrenney commented 1 week ago

User journeys:

Success:

LHN > Avatar > Security > Merge Accounts > RHP (same as close account) 2024-09-09_14-46-30

Are you sure > Magic code > Success

2024-09-09_14-52-22

zanyrenney commented 1 week ago

Failure flow 1:

Incorrect Magic Link Code (existing pattern) 2024-09-09_14-54-57

zanyrenney commented 1 week ago

Failure flow 2:

SAML is set as required on the Domain being merged into

LHN > Avatar > Security > Merge Accounts > RHP (same as close account) > Magic Code > Error message.

User sees: "your domain admin / IT has set/controls your primary login, you cannot merge dbondy@expensify.com into a different account". [placeholder] need to ask James for copy.

zanyrenney commented 1 week ago
dannymcclain commented 1 week ago

Yo @zanyrenney I got some stuff here for you to check out.

Let me know if you want me to post in the predesign threads in Slack for feedback or if you want to handle that!

For the "confirmation" (it worked or it didn't), I think we can handle it with either an RHP like we do for upgrades, or a confirmation modal which we use for tons of stuff. Not sure which I think is more appropriate, so we may just want to get feedback on that during the predesign.

zanyrenney commented 1 week ago

Hey @dannymcclain these are great, thanks so much. I want to add a few other things / Qs to the pre-design so I will post them today and ofc tag you!

zanyrenney commented 1 week ago

I got held up on customer hiring / syncs, and wanted to check a few things with Ted too. So I will post these tomorrow!

zanyrenney commented 6 days ago

conversations ongoing, pre-design was posted here - https://expensify.slack.com/archives/C06ML6X0W9L/p1726066356389699

zanyrenney commented 6 days ago

will move to doc soon!

zanyrenney commented 2 days ago

Updates to mocks 1:

Updates to mocks 2:

Updates to mocks 3:

zanyrenney commented 2 days ago

Message to domain admin from concierge > message reads [approve/deny merge request] > approve deny pill ?

melvin-bot[bot] commented 2 days ago

Triggered auto assignment to @CherylWalsh (Waiting for copy), see https://stackoverflow.com/c/expensify/questions/7025/ for more details.

zanyrenney commented 2 days ago

Ask Ted in doc review

jamesdeanexpensify commented 2 days ago

I am still working through copy suggestions in the mocks here. I think we're pretty close but @zanyrenney @dannymcclain feel free to bring anything out that looks weird or you have questions on, into Slack!

jamesdeanexpensify commented 1 day ago

One last comment thread in the Figma mocks for @zanyrenney. Should be good otherwise!

zanyrenney commented 1 day ago

Thank you so much @jamesdeanexpensify

bondydaa commented 21 hours ago

Will dive into the doc today and post any questions I have there.