Having worked for a number of ISPs in the last few years, I can tell you that most times when a wrong prices is given this is not necessarily out of dishonesty, but sometimes out of human error. A new salesperson that doesn't know all the prices by heart, someone that forgets to mention a detail, etc.
For example, when someone signs up with the company I work for, if they cancel before the account is activated (for high-speed only) they get a $20 service charge (honestly, for wasting our time). This is written on our website but not given verbally. If an agent would give all possible information to every single client, they would spend an hour on each call and not much would get done in terms of work. It's not through dishonesty that this is done, it's simply to prevent wastes of time.