Below is copied from a comment on a similar issue:
--------------------------------------------------------------
I managed a large retail store in California for 17 years and here is the
deal: A security guard has no authority to stop you, search you or see your
receipt for any reason unless he is in fact arresting you for a crime he
witnessed in person. He has no powers of "detaining you" to do an "
investigation" like a police officer does; even if the securtiy guard
believes he has "cause". He really would have had to witness a person steal
something before he can force them to comply to a check of their bag or
receipt. And if he had that knowledge, then all he would need to do at that
point is just arrest them (private persons arrest) and detain them until the
police arrived. No discussion, no checking anything. If they have to ask
you if you stole something; they really weren't sure in the first place.
Now what he can do is "ask" to see your receipt; and if you comply, then
that is your choice. But if you just paid for your items and you choose to
refuse to show your receipt: there is nothing the guard can do in that
situation but allow you to leave. Any detention or delay by the guard is in
effect an arrest at that point. And if he is wrong you can sue him. And if
he used any phyisical force (battery) you can have him arrested.
Situations where you have to show your receipt at club stores is an exeption
. You agreed to that as a condition of your membership. Stores like Best Buy
, Home Depot etc. have not made that agreement with you prior to you
shopping there.
People need to know what their rights are and let these retail stores know
in very clear terms that you do not appreciate them asking you to prove that
you are not a thief. It should never be that way, and if they are doing
their jobs properly; they will have discouraged shoplifters from ever
stealing anything before they get past the checkout to the doors.
And here is a point on those shoplifiting alarms: those darn things go off
all the time for no reason at all. Sometimes when nobody is within 20 feet
of them, so I would never allow a guard to use that as a reason to search me
before I leave. Just walk right out and if he forces the issue, have him
arrested.