A personal bugbear of mine is the out of bundle (OOB) costs associated with mobile broadband. Having the most experience with Vodacoms' systems I will refer mostly to them, but the principal applies to the other providers as well.
When you take out a contract you are subjected to a credit approval process. So you might be approved for a fixed cost of say R500 which should allow you to take out a 2.3GB standard or 2GB advanced contract at R389 or R385 excluding other costs. If you elect to take the 2.3GB option your OOB rate is R1.20/Mb. So if you went over your allowance and used say another 1GB you would be liable for another R1200 on top of your monthly cost. In this case Vodacom will have over extended your credit limit by over 200%. Clearly this is a case of reckless lending.
To make matters worse there is no way for a customer to "hard cap" themselves. Any ADSL client will vouch for the fact that if your cap is 3GB you get capped at 3GB. Yet Vodacom has no system in place to enforce caps nor do they employ a real-time billing system for contract customers as they do for pre-paid. This means even if a client was paying close attention to their usage they could still easily go out OOB because billing can be delayed by up to 24hrs.
Vodacom and other providers are liable by
1) Not supplying contract customers with real-time billing
2) Not allowing contract customers to have their data hard-capped at limit of the package
3) Profiteering by allowing customers to run up excessive OOB bills due to the deficiencies in their systems as outlined above.