That's kinda my point. The user experience is actually worse for many users. And it certainly doesn't handle all edge cases. It handles one specific case (of a customer with just a small number of small barcoded items) kind of acceptably, but slower than a human would.
But it's still being used, and replacing staff by reducing the overall number of staff required despite not handling all situations very well at all.
And this is the same mistake people make all the time when thinking about job automation. They say things like "I'm OK, my job could never be automated because a robot couldn't handle all the complex tasks I do like handling a customer complaint" but what they forget is that customer complaints is only 2% of their job. 80% is repetitive tasks that can be automated. So yeah, OK, one robot won't replace one person. But 10 robots and 1 person can replace 5 people. So now you have to reapply for your new job of robot supervisor/edge case handler, alongside your 4 other colleagues. And only one of you is going to get that job.
Personally, I'd probably go out of my way to avoid a chain with self-service given the option.
Oddly, it's the big box home improvement stores that are the biggest self-service retail users around where I live. Even though many items you buy there are at equally bad for self-service as grocery stores.