Strange, but I always thought it was illegal to refuse legal tender?
As far as I know, cash is not refusable if the business did not stated that cash is not acceptable BEFORE the transactions occurred.
I go into a restaurant, there is no notice anywhere stating that the place is cashless, and nobody tells me that as well. I eat, and then when paying, someone says "sorry no cash". In this case the place is FORCED to accept cash.
I go into a restaurant, THERE IS a large notice at the door saying "no cash" and the waiter reminds me of this before I order anything. I eat, and try paying with cash. The place is NOT FORCED to accept cash (and I better have other form of payment...)