There has been a lot of talking about 'the truth' about credit cards. Why do banks lend you money for free? Why are banks so willing to give money to just about anyone? Who is paying the additional expenses accrued to the product's price when the retailer accepts credit card payment?
I can never know 'the truth' but here's what I think:
Banks want to give you money because they hope that you will screw up and they will charge you extra fees. Take any low interest deal, for example, a Chase bank offer for excellent and good credit. The default APR is more than twice as high as the ongoing APR. The late payment fee is $15.
And what about additional expenses? All of them are simply included in the price. Like any other expenses. There is nothing to do about it.
Bottom line: banks want to make money one you but you can avoid it by managing your account wisely.