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-07-23] [CRITICAL] [P2P] Refactor the wallet enablement flow to be step by step and conform with our new design system #36648

Closed
anmurali opened this issue Feb 15, 2024 · 136 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Daily KSv2 NewFeature Something to build that is a new item.

Comments

@anmurali
Copy link

anmurali commented Feb 15, 2024

Problem:
The existing wallet enablement flow UI does not comply with our new brand design system, particularly our philosophy to take a stey by step approach to getting user input. It also doesn't give the user a sense of progression or context for remaining steps, which could cause drop off.

Solution:
Let's refactor the Ui to ask for the info step by step instead of all at once. Let's add a progress bar at the top for the various sections:

Starting point, no change
image

Current Add bank account step, which loads a blank modal and automatically jumps to Plaid flow. Although the only choice here at the moment, it is cleaner to just show this step and allow the user to explicitly click on Connect via Plaid
image

Current Additional Details step, which is shown as one form, with all these details. We will refactor it to ask for the details step by step here
image

Current Verify Identity step, which presents some legalese links and then moves into the Onfido SDK flow. But the Onfido SDK flow begins with disclosures that the user needs to accept, so we don't need to show this legalese twice. We will therefore change the copy at the start of this step as well.
image

The Onfido SDK flow cannot be further customized to match our branding but, can we try to add the progress bar we're using here at the top of that entire flow, if possible?

Current Terms and fees step, which is shown as one long blob, with all these details. We will refactor it to show it step by step here
image

  • The first of these screens should be scrollable and the Next button should be inactive till they get to the end and then turn active. If they try to click on it when inactive, let's present an error message to scroll to the end and review all of it.

Finished step, no change
image

Issue OwnerCurrent Issue Owner: @muttmuure
@shawnborton
Copy link
Contributor

For the start of the Onfido flow, I guess we should just mirror what we currently have in product (note this whole flow got a face lift recently!) where we basically just have one screen as a primer, then we kick off the Onfido flow?
CleanShot 2024-02-16 at 08 41 39@2x

@shawnborton
Copy link
Contributor

Also just cc'ing @mountiny (sorry for all the tags these days!) for visibility, in case we want to have the same group who worked on the VBA flows take this one as well.

@shawnborton shawnborton self-assigned this Feb 16, 2024
@mountiny
Copy link
Contributor

Thanks for the ping! We could ask Callstack due to their experience with this. I am curious though, I am not that familiar with the backend for this flow so curious if there would any changes be required there. @MariaHCD do you think you could chime in? I assume from what I could read the order of the steps is more or less the same.

We are not moving any checkboxes or any inputs to different steps right? (asking because we had that issue in the bank refactor and had to make changes to the backend slightly)

@anmurali
Copy link
Author

So far as I can tell, we're not changing any inputs. The only thing worth double clicking on is Current Verify Identity step
We currently show
image

I want to change that to
image

@mountiny
Copy link
Contributor

Nice, that sounds like basically just UI change!

@koko57 I heard you are keen on helping with this :) if so would you like to comment so I can assign you?

@mountiny mountiny self-assigned this Feb 16, 2024
@koko57
Copy link
Contributor

koko57 commented Feb 16, 2024

yes I was typing the message right now! 😃 I'm ready to help

@MariaHCD
Copy link
Contributor

the backend for this flow so curious if there would any changes be required there. @MariaHCD do you think you could chime in? I assume from what I could read the order of the steps is more or less the same.

The order of the steps looks the same to me too:

  1. AdditionalDetails step - which calls the UpdatePersonalDetailsForWallet API command
  2. Onfido step - which calls the OpenOnfidoFlow API command to initialize the flow, followed by VerifyIdentity
  3. Terms step - which calls AcceptWalletTerms

The KYC flow is outlined in this SO (in case it is helpful)

@MariaHCD
Copy link
Contributor

One thing I'd like to add is regarding Knowledge Based Authentication (KBA) questions. @anmurali I'm assuming we still want to have these questions displayed to the user?

@mountiny
Copy link
Contributor

🚀 perfect! @shawnborton will we need any more details? Maybe share a Figma file with Agata?

@MariaHCD Thank you, very helpful!

Noting here as well this is to help with testing https://stackoverflowteams.com/c/expensify/questions/10607/11542#11542

@shawnborton
Copy link
Contributor

This is the Figma file we have been using.

@mountiny
Copy link
Contributor

Thanks, shared with Agata!

@melvin-bot melvin-bot bot added the Monthly KSv2 label Feb 19, 2024
@koko57
Copy link
Contributor

koko57 commented Feb 20, 2024

Thanks for sharing the designs and all the info! I think I'm all set to start working on this refactor. I'll keep you updated on the progress

@koko57
Copy link
Contributor

koko57 commented Feb 22, 2024

Yesterday I started working on the first view - the additional step with the "Connect bank account". I'll continue working on this today

@koko57
Copy link
Contributor

koko57 commented Feb 22, 2024

@mountiny @shawnborton I'm almost finished with the UI (easier) part then I'll work on the logic. But before I close the UI part I just wanted to make sure:
Screenshot 2024-02-22 at 17 37 53

  • we only want one "Connect bank account" button there?
  • if so, do we need this text: "choose an option below"? (afaik we don't display it in VBBA flow)
  • should I leave this space below the button?

Can I also ask for the Spanish translations for the title and the description?

@shawnborton
Copy link
Contributor

Hmm would love @anmurali 's input on those when she is back from OOO, though maybe @joekaufmanexpensify can help answer that. @joekaufmanexpensify would we ever have a "manual" option for connecting your bank account for the Wallet enablement flow?

if so, do we need this text: "choose an option below"? (afaik we don't display it in VBBA flow)

Great point, that label could be removed in that case

And yeah, the space below the button should be removed too I think.

@arielgreen arielgreen changed the title Refactor the wallet enablement flow to be step by step and conform with our new design system [CRITICAL] [P2P] Refactor the wallet enablement flow to be step by step and conform with our new design system Feb 22, 2024
@joekaufmanexpensify
Copy link
Contributor

would we ever have a "manual" option for connecting your bank account for the Wallet enablement flow?

Yep, we definitely will at some point. It just hasn't been built yet. Right now you can only add a bank account via Plaid here.

@shawnborton
Copy link
Contributor

Sounds good. So @koko57 let's plan to just use the one button which means we can remove the preceding label.

@shawnborton
Copy link
Contributor

@koko57 when you have your PR ready for review, can you please tag myself as well as @jamesdeanexpensify who can help out with the correct copy to use? Thanks!

@mountiny mountiny added Daily KSv2 NewFeature Something to build that is a new item. and removed Monthly KSv2 labels Feb 27, 2024
Copy link

melvin-bot bot commented Feb 27, 2024

@melvin-bot melvin-bot bot added Weekly KSv2 and removed Daily KSv2 labels Feb 27, 2024
Copy link

melvin-bot bot commented Jul 29, 2024

📣 @shah-pujan! 📣
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. Make sure you've read and understood the contributing guidelines.
  2. 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.
  3. 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.
  4. 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>

@Pujan92
Copy link
Contributor

Pujan92 commented Jul 29, 2024

$250 @Pujan92 C+

@muttmuure Can you plz consider #36648 (comment)

@muttmuure
Copy link
Contributor

Apologies I missed that comment

@muttmuure
Copy link
Contributor

I've updated the payment summary

@Pujan92
Copy link
Contributor

Pujan92 commented Jul 29, 2024

Thanks! :)

@muttmuure
Copy link
Contributor

Not overdue

@melvin-bot melvin-bot bot removed the Overdue label Jul 29, 2024
@DylanDylann
Copy link
Contributor

Automation failed, invited @DylanDylann to https://www.upwork.com/jobs/~0147a6261f6e47d9e6

Sorry @muttmuure I couldn't open that link, it says "This job is private. Only freelancers invited by client can view this job.". I don't see any new offer either.

@melvin-bot melvin-bot bot added Daily KSv2 and removed Daily KSv2 labels Jul 29, 2024
@JmillsExpensify
Copy link

$1,500 approved for @Pujan92

@melvin-bot melvin-bot bot added the Overdue label Jul 31, 2024
Copy link

melvin-bot bot commented Aug 1, 2024

@shawnborton, @Pujan92, @koko57, @mountiny, @muttmuure Whoops! This issue is 2 days overdue. Let's get this updated quick!

Copy link

melvin-bot bot commented Aug 5, 2024

@shawnborton, @Pujan92, @koko57, @mountiny, @muttmuure Still overdue 6 days?! Let's take care of this!

@muttmuure
Copy link
Contributor

Sorry @DylanDylann - I've invited you again

@melvin-bot melvin-bot bot removed the Overdue label Aug 6, 2024
@muttmuure
Copy link
Contributor

@DylanDylann
Copy link
Contributor

@muttmuure Thanks 🙏 , I applied to the job

@muttmuure
Copy link
Contributor

Offer sent

@muttmuure
Copy link
Contributor

Waiting for offer to be accepted

@DylanDylann
Copy link
Contributor

@muttmuure Offer accepted with thanks!

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

melvin-bot bot commented Aug 13, 2024

@shawnborton, @Pujan92, @koko57, @mountiny, @muttmuure Whoops! This issue is 2 days overdue. Let's get this updated quick!

@mountiny
Copy link
Contributor

I believe we can close this one now, right?

@melvin-bot melvin-bot bot removed the Overdue label Aug 14, 2024
@DylanDylann
Copy link
Contributor

@muttmuure My contract for this issue is unpaid as of now, can you assist in releasing payments?

@mountiny mountiny reopened this Oct 17, 2024
@muttmuure
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 NewFeature Something to build that is a new item.
Projects
None yet
Development

No branches or pull requests