- In the EU, interchange rates are limited to 0.3% [1] for credit card transactions at physical terminals ("card present transactions"). That's not free, but it's an order of magnitude below US levels. Caps for other payment methods (card not present transactions and transactions made with debit cards) range from 0.2 to 1.5%.
- Some banks, or groups of banks, operate their own schemes (i.e. payment processing networks competing with Visa and Mastercard), and generally achieve lower fees. See [2] for one example where the price per transaction starts at $0.23 and goes down for transactions below $10, and for customers processing more than 10k transactions per year.
[1] http://europa.eu/rapid/press-release_IP-18-6655_en.htm
[2] https://www.postfinance.ch/en/business/products/accounts-rec...
But you can always offer a discount for cash. So some places do this to get around that rule.
If you're buying in cash you can try ask for a discount. If you're not asking you will get charged the same price they can't offer it out of the blue.