What to do with players who have done something very stupid, but unwittingly?

I’m starting a new campaign. All fresh players.

In the first session I gave them a very shoddy, small barge, which I planned to have them trade for a ox-drawn carriage, as the ship itself didn’t have much life in it. The NPC that was going to trade this to them lowballed and offered 5 platinum pieces (50gp). The players, instead of objecting to this price, accepted. This, of course set them up to fail in the travelling aspect. I do feel bad punishing them for something they did not know of, but I don’t want to give them a sweet 16 and have a carriage magically appear.

How do I resolve a situation where players’ decisions prevent me from moving forward? How do I prevent situations like this happening in the future?