Buying anything on board domestic U.S. flights tends to involve an announcement of the mantra that flight attendants would appreciate exact change. With a few important exceptions, most American carriers stubbornly refuse to accept credit cards in flight.
Now, those exceptions that DO accept credit cards are increasingly going the other direction: Credit only, no cash.
American Airlines appears to be the most flexible: accepting both cash and credit at this point.
I prefer having the choice of cash and credit, but honestly, I’ll take credit over cash any day, if only for the receipt (and the miles…)