Very clearly intended to combat “oh shit I need to cancel that one” when the charge shows up in hopes you forget again.
[0] https://www.theguardian.com/technology/2017/mar/03/uber-secr...
While I never implemented a restriction like this, it would have prevented a lot of weird bugs/customer support issues and kept the underlying code much simpler.
(Annoying math = time zones, prorations, discounts, billing cycle anchors, etc. see the “falsehoods programmers believe about X” series)
(Systems to sync between = internal DBs, billing APIs, payment processors, etc.)
In my mind it should be something like 3 or 4 screens/prompts max.
Account (1) -> Cancel (2) -> Are you sure (3) -> Why did you cancel (4).
1: Account
2: Cancel
3: Call this number.
4: Call number.
5: Welcome to Customer Service press… … …press 9 to cancel.
6: We need to confirm who you are. Give birth date, etc.
7: Are you sure?
8: Agent gets on the line.
9: Why do you want to cancel?
10: We are offering you a discount to continue and not cancel, how about that?
11: Cancel
12: Are you sure again? (This time for real)
13: Cancelled, but we are offering you a BIGGER discou… this is when I hang up.
I felt a little bit bad about hanging up but mostly I was just mad.
I should (pretend to) cancel more often!
I used to do this with the cable company but they seem to have gotten wise to it. Last time I tried in 2020 they basically told me to pound sand.
Fortunately I got fiber now and got to tell them to pound sand instead.
For Uber? In the handful of times I've canceled uber one trials I've never seen this. It's always through the app. Not even the FTC complaint alleges this.
I ran into this with a NYTimes subscription I tried to cancel. They detected I wasn't in a state with such protections and removed the cancellation options while not providing a way to cancel. Made things real hard to shutdown.