When I’m having a problem with a company, I try sometimes to remind them of a principle of customer service I worked out when I was running ClariNet. Namely that when a company screws up, it should more than fix the problem, even to the point of losing money (for a while) on that customer. The reason, in brief, is that this does more than make the customer happy with the transaction. It signals in the strongest possible way that the screw-up is a rare event, which makes the customer come back for more.
I have outlined it in this page on Brad’s principle of customer service.