I have always been a huge proponent of booking.com. You might even think I work for them, I am such a promoter (I don't work there). I hardly ever look at hotel listings in guidebooks any more, I have found this site so useful. They are usually very transparent about the terms, calling out when a booking is nonrefundable in search results, or when "no prepayment is needed-pay at property." Recently I became aware that there is another category, free cancellation but you pay in advance. The site is not nearly so transparent about this nonstandard (for this site) set of terms. And the property is entitled to set its terms, of course. I am not suggesting this is a "scam" or any such thing, just buyer beware if you don't like to prepay. My bad, if I had dug for it I could have found it but I am not used to having to dig for precise terms on this site. Usually it's very explicit but here the lack of "no prepayment needed" should have been a warning.
I am not a big fan of "pay in advance" which is one reason why I have always used booking.com. You lose leverage over the property should things turn out to be substandard. For other things like a cruise or Autoeurope, I go along with it but they are transparent about it and that's a conscious choice. I realize other booking sites use prepayment as their default setting. I can always cancel but I made plans around this booking so I'll probably just consider it a lesson learned.
Moral of the story, don't assume if it's not flagged as nonrefundable that you can pay at the property unless you see that explicitly called out on booking.com.