Those costs are borne by the consumers in higher prices anyway; no business owner is eating 2% of gross margin just to be nice.
That is a bit of an overly simplistic viewpoint.
There is a price point where the business makes maximum profit. Too low of a price and they don't profit as much as they could per sale. Too high of a price and they lose sales and thus profit less. It is every business's (very difficult) job to find that optimum price point for their products. There are formulas and experiments that help (run a sale properly and you should get enough data to determine the mathematical optimum price point), but even those are time consuming and somewhat inexact since it is hard to experiment on your customers. Those formulas are taught in Microeconomics 101.
That optimum price is unaffected by costs. Meaning if they pay 2% or 0% for transaction fees, the optimum price point for maximum profit is unchanged. Thus, if the business wants to have maximum profits, the business should not pass on the fee.
The only time the costs matter is if the optimum price point is lower than the costs*. At which point, the business should not be selling that item/service at all (unless as an intentional loss leader).
* Or, possibly just too little of profit to bother with.