Someone is paying for it. In this case it's people who keep a balance and pay interest. If you never do that, you're getting those benefits mostly for free.
Merchants have to pay a decent sized fee on every transaction, and that fee is definitely passed on to the consumer via higher prices. But it’s also (arguably unfairly) equally passed on to consumers paying cash.
That's a fair point as well, although the fee is generally quite small.