Why are debit cards free?

Debit Cards payments actually cost 17p per transaction but MCM Insurance has chosen to cover this cost on behalf of its customers.