I don't understand how a cashier can give back too much money. It's simple math. It's happened to me a couple of times, and I've given it back. Conversely, I've had customers give me too much money many times, and they always seem shocked when I bring it to their attention. "You're so honest!" Well, I believe that if I take from someone, I'll lose a lot more in the long run. As far as cashiers that can't count, when I train my cashiers, I tell them to count the money twice. Once to themselves, and then to the customer, "your change is $68. Twenty, forty, sixty, five, six, seven, eight." I can't tell you how many times dishonest people have purposely taken advantage of cashiers who appear to not know what they're doing. "Can you give me change for $100?" "Sure, what ya want?" "Six twenties will be fine." "Duh, okay!"
It's happened to me a few times. I gave it back each time not because I felt guilty taking it but actually because I don't want to get the employee in trouble when the cash register is short at the end of the day. Only 1 time I actually kept the money and that is because I didn't notice they gave me too much till I got home. I was owed $3 and change. The employee gave me 3 bills and change so I assumed it was correct, but it was 2 singles and 1 $5 bill.
This is terrible, I know. But like 2 years ago, at the place I work at, this girl gave me back extra change and I didn't say anything. Granted, it was nothing major, like it was suppose to be $11.15 or something and she gave me $15.11. I know, I'm terrible.
Hey, at least I'm honest. Actually I can't remember ever purposely keeping the extra change--I usually give it back because I'd feel bad if I got them in trouble (or fired).