Taking cash costs money as well: more security, more auditing, more cash transport, higher insurance costs, etc
Even better, because of forced cash now every business incurs those costs even if the overwhelming majority of their transactions aren’t in cash.
The solution to “discrimination against homeless” is not forcing people to take cash, it’s forcing banks to allow homeless people to open bank accounts.
Banks only "work" because they can earn interest on deposits. Homeless people will likely not have enough deposits to make it worth serving them, and they will likely also cost more in support and fraud.
If you compensate them too little, banks will do their best to wriggle out of it or make it inconvenient. If you compensate them too much, they will become predatory in opening homeless accounts. In any case, the incentive structure is all wrong once you try to force the free market in the wrong direction. And who's going to be paying? I hope it's not me.
There is no way this would end well.
Adding a few rows to a database is not expensive. Hell, even saying you can't charge fees to people with less than $X means not making a profit, not taking a giant loss.
The biggest way to stop "fraud" losses as a bank is to stop automatically allowing overdrafts - this is something that banks only do because their "convenience service" of allowing OD automatically is purely a profit making tool and has nothing to do with convenience is that overwhelming majority of cases. Because those tiny overdraft balances incur massive fees and interest that further cost the victims.
https://dharmamerchantservices.com/faq/visa-consumer-interch...
Scroll down and check out the debit rates. 22 cents a transaction for credit union debit cards isn't cheap.