As Chris2048 said, I believe the law draws a distinction between buying something and paying a debt. I've heard that, for instance, you can always use cash at a sit down resturant where you pay at the end because that's paying a debt, but if you order the food (or whatever) up front that's not a debt yet, so they don't have to accept cash.
It's an interesting distinction that I only learned about recently, and I'm not sure I agree, but it seems to be the compromise we currently run off of.
"[31 U.S.C. 5103] means that all United States money as identified above are a valid and legal offer of payment for debts when tendered to a creditor. There is, however, no Federal statute mandating that a private business, a person or an organization must accept currency or coins as for payment for goods and/or services."
To get the fully nuanced picture:
-If you wander around to a grocery store bakery, and eat one of the donuts before getting to checkout, you have the right to settle your debt with cash.
-Otherwise, the store can force you to pay with their preferred method, or else will return the merchandise to the shelves.
Yeah, that's a good point. I mostly wanted to convey a payment after use of the product or service. A better example might be paying your mechanic after he finishes fixing your car.
It's an interesting distinction that I only learned about recently, and I'm not sure I agree, but it seems to be the compromise we currently run off of.