I just tried to pay for some home improvement and the business said I would have to pay a 2% fee if I paid with my credit card. Is this allowed?


Yes, companies pay service charges to visa and other cc companies and thus can charge a markup on services if paying this way. Most factor it into their prices, but home improvement places tend to want cash or check and up charge for cc as well as some gas stations, specifically in the northwest of the US.

Yes, this is commonplace in some industries. However, the way they go about it varies from state-to-state. In some places, you can charge higher per-item rates for using a credit card (for example, different Cash or Credit prices for gasoline.) In some places, you cannot charge explicitly for credit card use, but can give a small discount for cash payers.