Right. Banks can charge their customers whatever they want (as long as it's the same as for domestic transfers), but they can't charge other banks fees for accepting their wire transfers.
So an upstart bank can claim zero fees, still have access to other banks without them ruining it for them. But in the case of debit/credit cards, you couldn't start a card processor without being subject to fees.
That's not exactly true. Payments to other countries within the SEPA must not cost more than a domestic payment. That's usually nothing for people, but businesses may pay.
As an example, the Bank of Ireland charges businesses €0.10
https://businessbanking.bankofireland.com/banking/current-ac...