I had covid 2 weeks ago, and I paid extra for a 2 hour food order from Walmart. I wanted something I forgot on an order I had made somewhere else. After 3 hours I got notice that some of the impulse buys I added were out of stock. Which is fine, but the only reason I added them was because they showed them to me. Then after 6 hours there was no word from them, and I knew the local store was closed. So I just canceled the order.
I understand the retail employees are busy and things don't always go as planned, but there should have been some automation in place to help them here. Like don't offer items that are low stock, and automatically issue refunds on the 2 hour purchase charge after 4 hours. Maybe even automatically include an extra credit, as an incentive to try again.
I had an experience recently with Door Dash where after you order, their app will suggest buying additional items from 7-11. They give you a ten minute window to add items. I assume the driver will pick them up after your order. I decided to go for it and order an impulse item myself. When I got to the checkout to pay, it wouldn’t let me because I guess it was after hours, but the app was still suggesting it to me. It was incredibly frustrating as a user to have a service suggest an option that was impossible to fulfill.
I wonder if maybe there are two different teams at Door Dash working on this, one doing the upsell and the other actually handling the fulfillment. Seems they need to talk to each other more.
What might have happened is they were open while you started checkout and then closed after. I’ve had this happen many times. They need to handle this better in the UI.
The issue with an actual store is that the "physical world overrides the virtual".
Your database in the virtual world may say that 20 items are in stock. When you walk over to the shelves, you only see 2 items. Well, I guess only 2 items are in stock. It doesn't matter that the remaining 18 were stolen by a shoplifter (or maybe scattered elsewhere in the store). You may have had 20 items enter inventory, but what's on the shelf is your final database.
There's not really any way to keep that up to date. Even if you have a bunch of minimum wage employees count the items constantly: as soon as the first customer walks through that row, your count is obsolete.
If you hook up your inventory system to the checkout: that still doesn't work, because thieves exist, and many customers pickup items, suddenly decide they don't want it, and then drop the item off randomly in the store (maybe they pickup some cheese, and then decided they didn't want it. So they leave the cheese in the clothes aisle and now the cheese is spoiled)
Sure, but this wasn't that. This was an item that was on sale that had one left that they showed me just before I checked out. If I had just picked it out, that is one thing, but to bring attention to it is just a bad experience. They could simply start by removing anything with a single item left from the last minute sales pitch. They could improve it by figuring out the probability of an item being available.
Honestly, it's bad UX that they even make you choose a store, that is an implementation detail. I have 3 Walmarts within 5 miles of my house, and 10 of them within 10 miles. They should present them to me as a single same-day warehouse, and then they can work out where to get which items from.
I understand the retail employees are busy and things don't always go as planned, but there should have been some automation in place to help them here. Like don't offer items that are low stock, and automatically issue refunds on the 2 hour purchase charge after 4 hours. Maybe even automatically include an extra credit, as an incentive to try again.