That topic has come up here before, and the answer seems to be “yes,” because while cash is legal tender, there is no federal law that says that a private business (or person) must accept it.
This web page, from the Federal Reserve, spells this out.