At a nameless MLP site (like you don't know where I mean), one of the highly modded comments on this same story was that the phone company does this on catalog sales already, because they're charging for the 1-800 call, and the company pays it. This is not a valid comparison, because the price of the call doesn't change based on whether the caller purchased something.
My opinion is that AT&T is wrong on this issue because they're not providing anything in addition to what is already being paid for. The ISPs/hosts/customers are already paying AT&T fees for network access. There is no change of service from AT&T whether the user is smurfing pr0n or buying VW Beetles online. If there were an additional QOS involved, then there may be a valid reason for this charge, but if and only if the selling company agrees to the QOS charges. Of course the charge would be passed on to the customer, but I for one consider site and network stability when purchasing online as much as I consider price. I've had too many purchases fubared by network errors.
However, this amounts to nothing more than a corporate-billed tax. The agreements signed by providers didn't state they'd pay more for network access if they were selling something. If that's not the contract under which the service was purchased, AT&T should not be able to introduce the charge afterwards, once their customer has committed to using their network.