They don’t have to accept cash in advance. They do have to accept cash for debts, such as when you have already eaten the meal.