-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[Issue Payment] [$500] Update error flow for prevent splitting bill with workspace and additional participants #27508
Comments
Triggered auto assignment to @NicMendonca ( |
Bug0 Triage Checklist (Main S/O)
|
Job added to Upwork: https://www.upwork.com/jobs/~012cece4afbcaaddc6 |
Current assignee @NicMendonca is eligible for the External assigner, not assigning anyone new. |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @fedirjh ( |
📣 @situchan 🎉 An offer has been automatically sent to your Upwork account for the Contributor role 🎉 Thanks for contributing to the Expensify app! Offer link |
Assigning situ to this since he helped review the original PR |
ProposalPlease re-state the problem that we are trying to solve in this issue.Prevent splitting bill with workspace and additional participants What is the root cause of that problem?We're only hiding the confirm button if our we're splitting with workspace, we need to update this logic. What changes do you think we should make in order to solve the problem?
footerContent={
isAllowedToSplit ? <View>
<Button
success
style={[styles.w100]}
text={translate('common.confirm')}
onPress={navigateToSplit}
pressOnEnter
enterKeyEventListenerPriority={1}
/>
{!shouldShowConfirmButton && <FormHelpMessage message="iou.error.invalidSplitWS" />}
</View> : null
}
What alternative solutions did you explore? (Optional)Similar above but instead of having constant message, we should introduce 2 new state: const [hasError, setHasError] = useState(false);
const [errorMessage, setErrorMessage] = useState(''); Add an validation on user selecting the option and set the error based on that. ResultScreen.Recording.2023-10-10.at.13.46.37.mp4 |
Please share demo video with form error displayed. Message can be dummy for now. (We need to get copy) |
Something like this Screen.Recording.2023-09-15.at.18.01.51.mov |
ProposalPlease re-state the problem that we are trying to solve in this issue.Prevent splitting bill with workspace and additional participants What is the root cause of that problem?No check is performed to exclude the possibility of a workspace being involved when there are multiple participants. What changes do you think we should make in order to solve the problem?
To ensure that if there is more than 1 participant, a workspace cannot be included. if (props.iouType === CONST.IOU.MONEY_REQUEST_TYPE.SPLIT) {
if (selectedParticipants.length > 1 && _.some(selectedParticipants, ReportUtils.isPolicyExpenseChat)) {
setError(...);
}
}
App/src/components/MoneyRequestConfirmationList.js Lines 408 to 412 in d9f35a3
What alternative solutions did you explore? (Optional) |
right |
ProposalPlease re-state the problem that we are trying to solve in this issue.Prevent splitting bill with workspace and additional participants Actually, I'm not really like the idea of show form error if we're splitting bill with workspace and additional participants. I like the idea of @thienlnam about hide the "Split" button for WS here https://expensify.slack.com/archives/C01GTK53T8Q/p1694769296727379?thread_ts=1694746421.663479&cid=C01GTK53T8Q What is the root cause of that problem?Currently, in App/src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js Line 247 in 76c1559
What changes do you think we should make in order to solve the problem?All previous proposals would like to show error in the Split bill page, but I think we should stop user go to next step in the selecting participants page. In order to do that:
Demo: Screen.Recording.2023-09-16.at.17.49.27.mp4What alternative solutions did you explore? (Optional)Hide the split button on the right of all WS chat as @thienlnam suggested here https://expensify.slack.com/archives/C01GTK53T8Q/p1694769296727379?thread_ts=1694746421.663479&cid=C01GTK53T8Q, from begining, not just after user selects a participant |
@NicMendonca, @thienlnam, @situchan Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
@LLPeckham does it include the case of split bill with more than 1 workspace? (I.e user adds workspace A and workspace B to list split bill participants) |
@hoangzinh - I must be misunderstanding what the error is here as I'm not up to speed on all the comments in this GH. Are we basically saying someone is not allowed to split bill between a workspace and select additional users, but they can select two workspaces at the same time? |
Ah, they can't in this case. |
Ah ok, can you please let me know what the error is that we're writing the copy for? I just want to understand what the user would be trying to do that they can't do so that I can propose the right copy. So it sounds like when they split a bill they can only:
They cannot select more than one workspace, and they cannot select a workspace and additional individual users? If that is correct, then my copy suggestion above should make sense, right?
|
|
Ok, I think I see what you were saying in your comment now thanks for bearing with me! -- to account for if someone chose either two workspaces, or a workspace and additional users, what about something like:
Also - if it's possible to tailor the error message then this would be better:
|
@thienlnam - LMK if you think this reads ok and we can get the Spanish translation as well. Also just checking with the rest of the marketing team if we want to capitalize "Workspaces" or not - so will come back once I get a consensus there. |
That looks great! |
Alright, @thienlnam @hoangzinh - I went to get the Spanish translation and @iwiznia had some good thoughts here as this error message and the experience is still pretty confusing. So rather than actually writing an error message, Ioni suggested that we do two things to get rid of the need to even show an error:
This way, there is no need for an error at all and is less confusing for the user. What do you think about this change rather than showing that error message? |
Bumping @thienlnam @hoangzinh |
@LLPeckham it looks like the same thought as @thienlnam raised here https://expensify.slack.com/archives/C01GTK53T8Q/p1694770873084719?thread_ts=1694746421.663479&cid=C01GTK53T8Q. Do you mind to repost your comment above in that Slack thread and we continue to discuss on it? |
I'm going to comment in that thread (internal) - we decided not to do that because it's not consistent with our existing error flows |
English: Split bill is only allowed between a single workspace or individual users. Please update your selection. |
It looks like Melvin didn't process the next step for this issue. The PR #30302 has been deployed to PROD 10/11/2023 cc @NicMendonca |
@situchan just re-sent you the offer |
@NicMendonca accepted thanks This issue meets bonus condition:
|
@hoangzinh can you please apply here? https://www.upwork.com/jobs/~01637d93b3c12105d2 |
Applied. Thanks @NicMendonca |
all set here! |
As part of #25564, we merged together split bill and request money. However, now you have the ability to split a bill with a workspace as a participant along with other members. This is not supported, and needs to be cleaned up.
We talked about it here: https://expensify.slack.com/archives/C01GTK53T8Q/p1694770696392489?thread_ts=1694746421.663479&cid=C01GTK53T8Q
Let's add a form error that prevents you from having multiple participants that include a workspace when you try to hit 'Split Bill'
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: