Not quite.
Businesses and private citizens are free to determine what they will accept
for _payment_ of goods or services, e.g. “no checks accepted” “cash only”
“we accept credit cards”, whatever. The seller sets the terms.
A dollar denominated _debt_ is a different matter. They must accept payment in dollars, currently defined as US currency notes and coins.
Not sure about minor coinage though - they might be able to refuse pennies in amounts over $5.00, or at best the coins would need to be rolled. Most likely they will have to accept the pennies though.
What is interesting, if an offer to pay a _debt_ is refused, then the debt is no longer owed, for all intents and purposes. With all that said, it’s generally a bad idea to be a prick in this manner.
My method is to accept the pennies, after they’ve been verified.
If the customer wants to be a jerk, I’ll make him stand there until I have verified them.
No, I don’t let the customer help me count them, because it is me that has to verify them.
I don’t get a lot of change from regulars. :)