Am I crazy if for something like an online purchase, I kind of expect it to take a second or two to process the payment, so I would assume something went wrong if it was 200ms?
I’ve definitely had in the UX side a situation where the PM/Owner types asked me to introduce a delay in the “disabled button with loading spinner” such that the user sees it for a visible amount of time because our API was too fast for their taste.
Yes similar here, async operation that could be quick enough not to warrant a busy state, but not all the time. So rather than show a flash of busy state, that makes the ui look janky when the operation is quick, show the busy state for a minimum amount of time
For one of the supermarket chains I frequent, from me handing over the single item I'm purchasing I can be walking away within 20s. They scan the item, then a loyalty barcode on my phone and finally I tap my iPhone which has my bank card loaded onto it.
Basically, they don't have any significant bottlenecks, POS hardware + software is responsive with an efficient UI for the operator, and the card machine is a wired connection to a router with a fibre uplink.
With the speed of modern internet connections, I'd honestly think something were wrong if it took a couple of seconds. I'd expect almost instantaneous results. What amazes me every time is the amount of things happening in that short amount of time though. The amount of endpoints/channels the signal has to go through to go from "I want to buy this" to "You bought it!".
I agree that purchases on e-commerce sites are virtually never this fast; but I have used some extremely fast physical payment terminals (e.g., Square): sometimes it seems like the transaction is sub 300ms, which I find very impressive given the complexity of payment processing.
That was terrible, I used to always turn it off. It's like speaking one word and the person interrupting you based on the prefix you had uttered so far... every single darn word. Imagine writing "how do I kill" and having it assume you meant a living being rather than a program.
I think it was a poor choice of example, because people will expect payment to be involved. They’re actually just inserting a row into a database for the order; presumably payment is to be handled out-of-band.