The business doesn't lose 3 percent of revenue, because it also saves money not dealing with cash:
- eliminates cash theft - always a chronic problem for business.
- reduces costs of transporting/dealing with cash
- improves bookkeeping and paper work
and it gains revenue by dealing with people who don't use cash. A large number of customers don't make routine purchases with cash, and these are higher income customers.
So the choice isn't "pay 3% on X or don't pay 3% of X" The choice is "pay 3% on X" or "don't pay 3% on .9X".