If you don't believe parent, and you don't believe me, I hope you believe Visa's own FAQ.
> Q. Can I add a surcharge to card transactions?
> As a result of a legal settlement to resolve claims brought by a group of U.S. merchants, merchants in the U.S. and U.S. territories may add a surcharge to certain credit card transactions, starting January 27, 2013. Merchants who choose to surcharge must follow consumer disclosure and other requirements agreed to as part of the settlement.
[1] https://usa.visa.com/dam/VCOM/download/merchants/surcharging...
Just because it is legal, doesn't mean they are doing it right -- and in my limited experience, they usually aren't.
In this case the contract is that 1) you tell them you're doing this and 2) that it is capped to a certain amount and 3) you are visibly doing it and the customer is properly informed.
These are all pretty reasonable contractual terms, IMHO.
No, I can't.
If you have me sign a contract that says "refurb agrees to no longer walk in exchange for $50,000", that will not be enforceable in court.
https://blog.ipleaders.in/unenforceable-contracts-what-you-n...
You said "If you want to have fun, you can report them to Visa/MC and watch that go away within a few days.", so no, if they are following the contract terms, it won't go away.
And Visa isn't able to include a blanket ban on surcharges due to changes in the law that would make such a contract illegal and unenforceable.