Always read the fine print. People rush into making a room reservation based solely on the rate or the pictures. When you reserve that room, you are entering into a legally binding contract. You are agreeing to the terms and conditions on that site and for the hotel.
Try contesting the charges in court or with the bank and good luck to you. Whether you think it's fair or not, or whether you like the terms and conditions is irrelevant after the fact. Once you've "confirmed" that you agree by hitting the reserve button And sending the merchant your order you are required to uphold your end of the contract.
Saying you didn't see the information on the website or vendors advertising pages is not a good argument either. The burden of proof is on the accuser. Be prepared to provide proof that the information was not provided BEFORE the purchase was made. Usually the information on reservation pages is right next to the reserve button. Sometimes it is before the checkout page.
My advice is to just stay away from the prepaid reservations since the savings are not nearly all that much lower. 3 party websites like Expedia, booking.com etc, are travel agencies. They will get a fee for sending your reservation to the hotel. If you have an issue at the hotel, you will need to go back to the 3rd party to resolve the billing issue.
Call hotels in the morning hours and ask for a manager (GM) to get answers to your booking questions. Also ask for discounts from the manager rather than the desk staff. Ask about the policy for refunds and anything else you think you should know. Last, take names of the person you spoke to, their positions and get confirmation or cancellation numbers. I can't count how many people don't do this and find out that they've been charged as a no show for a reservation they cancelled, but can't provide a cancellation number or name of the person they spoke to. Other show up with no reservation at a sold out hotel and having no confirmation number means you have no grounds for recovery.
genius
status and I use it quite a lot. They do advertise the cancellation fee, and also shows the amount when you cancel.