I recently had an unpleasant experience with one of customers in a club where I work as a waiter on weekends (it's my weekend job to get some money as a student). So far, I haven't had any unpleasant experience because of the club's nature (people usually mind their own business, they are friendly (and so are we :) ).
But this weekend, we hosted an event for some agency, whose parties tend to get "wild". Fast forward to two unpleasant experiences with customers: I, for the first time, encountered two guys throughout the night who said they gave me a 20-dollar bill (but I was sure it was a 10) when I returned them change for a $10 bill. I insisted on my side of the story with the first guy (I'm always totally sober on the job, always check the money and do calculations for change in my head etc.), but I got "scared" with the second guy (questioning in my head: "What if he really gave me a 20? What if even the first guy gave me a 20 and I screwed him over?") and returned him 10 bucks more.
At the end of the evening, when we counted all the money, sure enough there was $10 missing. I had to cover them from my own pocket (you can guess what it feels like being a student who works for $5/hour and covering money from your own tips which don't get extensive here in Europe...).
How could a conflict like that be resolved? I always insisted on "the customer is always right" rule when it came down to work at some other jobs, but you just cannot do it like that when it comes to money. What should I say in my defense instead of things like "I'm totally sure that you gave me a 10."? In conflicts like these, it's their word against mine and I can do almost nothing about it...