It is completely illegal, unless it's a government agency. It does not matter that it costs the vendor more - that's just the price they pay for having the ability to take credit card payments. Do not believe the other answers you see here saying that it's allowed.
No it is not. Federal Courts held in the 1990s, that ONLY Government Agencies and Non-Profits may charge for the CC surcharge. Any private enterprise, is violating Federal Law, when charging you 3%, 4% etc,
No, it is not legal. However, a vendor can give a discount to a customer/client who uses cash. Most who engage in this practice jack up their prices five or ten per cent and then give the discount to cash users and don't lose a penny.
Yes it is. The credit card machine costs the business money to use. Sometimes, most smaller locally owned buisnesses, do not generate enough credit card sales to pay for the bill. So they charge a nominal fee in order to pay the bill so they can continue carrying credit card services. Bring cash next time if its an issue.
Every time someone uses a credit card, it costs money to the vendor. Some vendors absorb the cost because credit cards mean there are no hassles with bouncing checks. Some vendors attach a handling charge to offset the cost of the credit card to them. This is perfectly legal and understandable.