It definitely happens in some cities and with private operators. It shouldn't and there used to be a strong reason why. When we were still rolling PayByPhone out to as many cities as we could, the argument was strong (and often accepted by the city) that by having no additional app usage fees the city would see more rapid adoption of the service by users. That was everyone's goal because a reduced need for meter coverage in busy areas, for new meters in new areas, and reduced physical wear and tear and vandalism and theft, the cheaper the city's operating and capital costs are. Those costs are real.
As the radius of paid parking expands in a metro area, and it always does, it's an enormous cost saving for cities (read: taxpayers) to see it happen with apps and not hardware on streets. The maintenance contracts of meter manufacturers is truly a racket. The city will pay millions up front for a neighbourhood of meters and then pay hundreds of thousands per year for the maintenance contract. Forever. That sort of nonsense is buried in parking rates.
So yeah, IMO, transaction fees are mostly bullshit. Apps help keep capital and operating costs low. They're ahead of the game by ditching street hardware and eating the very small transaction costs (their merchant accounts are typically low cost because of the sheer volume they push through).
[1] https://vancouver.ca/news-calendar/mobile-option-pay-for-str...
Dinner running long and you need 10 more minutes? That’s .25 for parking and .35 for the app.
I think Vancouver used to batch at the end of the day (I would only see one transaction for all sessions in a day) eat the transaction fee, and paid a flat yearly rate to PayByPhone for managing it. The new contract - signed after meters disappeared- added the fees.
It pisses me off to no end that if I try to do the right thing and pay for a quick few minutes to run in somewhere I get whacked with a transaction fee that costs more than parking.