-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
Unable to login with non-existing account that owes money #45252
Comments
Triggered auto assignment to @joekaufmanexpensify ( |
That said, this is a pretty bad bug for a core flow, so makes sense to me to fix now. |
Job added to Upwork: https://www.upwork.com/jobs/~017518e8ff7a1d7f72 |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @mkhutornyi ( |
@kabeer95 Please read through contributing guideline and follow proposal template. Thanks |
Problem Statement: The problem we are trying to solve is that when a user attempts to log in with a non-existing account that owes money, the system does not handle the situation correctly, leading to a poor user experience. Root Cause: The root cause of this problem is that the current login system does not have a mechanism to detect and handle cases where a user attempts to log in with a non-existing account that owes money. This lack of error handling and recovery flow leads to a poor user experience and potential frustration. Proposed Solution: To solve this problem, I propose the following changes: Implement robust error handling to detect when a user attempts to log in with a non-existing account that owes money. Soft Delete: Instead of completely removing the account, we could implement a soft delete mechanism that marks the account as inactive but still retains the account information. This would allow users to recover their account and resolve the outstanding balance. |
Still pending proposals |
The request for new account with IOU and without IOU looks same. So could this be a back-end issue? Request for user with IOU (error):
Response: {
"code": 666,
"jsonCode": 666,
"type": "Expensify\\Libs\\Error\\ExpError",
"UUID": "9882CD0B-BC6B-46E8-951D-A633A1678314",
"message": "Cannot get account details, please try again or contact concierge@expensify.com",
"title": "",
"data": {
"onyxData": [
{
"onyxMethod": "merge",
"key": "account",
"value": {
"errors": {
"1720803445531455": "Cannot get account details, please try again or contact concierge@expensify.com"
}
}
}
]
},
"htmlMessage": "",
"onyxData": [
{
"onyxMethod": "merge",
"key": "account",
"value": {
"errors": {
"1720803445531455": "Cannot get account details, please try again or contact concierge@expensify.com"
}
}
}
],
"requestID": "8a22927d3db1032e-AMD"
} Request without IOU (no error):
Response: {
"onyxData": [
{
"onyxMethod": "merge",
"key": "credentials",
"value": {
"login": "xxxxxx+aslfdk@proton.me"
}
},
{
"onyxMethod": "merge",
"key": "account",
"value": {
"validated": false,
"primaryLogin": "",
"accountExists": false,
"domainControlled": false
}
}
],
"jsonCode": 200,
"requestID": "8a2292e37dd8032e-AMD"
} Also noticed that the Pay button in the email send to user without account does not work, the sign-in request fails with error: "402 Invalid request, this command shouldn't get called for open accounts" |
📣 @jaydamani! 📣
|
Contributor details |
✅ Contributor details stored successfully. Thank you for contributing to Expensify! |
@mkhutornyi, what do you think? Do you agree this could be a backend issue? |
@joekaufmanexpensify, @mkhutornyi Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
checking... |
Hmm, okay. I will try and reproduce again today |
@mkhutornyi did you specifically try and submit two IOUs to the account that did not exist? When I did that the other day, and again this morning I can still reproduce. 2024-07-17_10-30-03.mp4 |
Updated repro steps to clarify you need yo submit two IOUs |
📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸 |
Not able to test this. Money request flow from FAB button is broken at the moment. (bug report: https://expensify.slack.com/archives/C049HHMV9SM/p1721328491853809) Screen.Recording.2024-07-18.at.11.34.17.AM.mov |
As the error is coming from backend, need help from internal engineer to find the exact root cause. And most likely backend bug. |
Triggered auto assignment to @Julesssss, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
Example query seems to show an invalid value of the
|
@danieldoglas will probably know the most about this. It was originally added in the front-end with a default value of Then it was changed to One thing I notice is that the intention of this PR appears to have been to include |
Oh wow... so yes, we should change the |
BTW I think it's totally fine to send clientUpdateID in all requests, even if we only need it for writes. |
PR merged, thanks |
Sweet, thank you both! |
@iwiznia, @Julesssss Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
Fix is on prod |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number: 9.0.6-0
Reproducible in staging?: Y
Reproducible in production?: Y
Logs: https://stackoverflow.com/c/expensify/questions/4856
Issue reported by: Applause-Internal team
Action Performed:
Precondition:
User B has no account yet
Steps:
Expected Result:
User B should be able to login
Actual Result:
Unable to login with non-existing account that owes money. "Cannot get account details, please try again or contact concierge@expensify.com"
error message is displayed on login page
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Bug6538444_1720651977684.Recording__3476.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @mkhutornyiThe text was updated successfully, but these errors were encountered: