You'll know from my writing in the past, that I'm a big advocate of making one's customers pay (which is something I've become a little battle-hardened on over the years). I'm however also a firm believer in giving customers a superior experience & I'm more than happy to fight for my customers and defend their livelihoods when needed.
Somewhere within that landscape of differing views on what constitutes good customer experiences and how I / we should interact with customers, I've developed a tendency to fire customers when the situation requires it.
Taking a step back, I think it's important to say that not all customers are created equally; in a very similar way to not all companies or products being equal either.
As such, I don't believe that the customer is always right (instead I now believe that it was a rookie error to even think like this from the beginning). I now believe that every customer interaction should be handled on the merits of that individual situation, with the underlying intention being to give every customer a fair opportunity to receive their desired outcome.
I'm also reminded of all the signs that reads Rights of Admission Reserved, which obviously had the intention of giving the holder of those rights some mechanism to exert influence on any given situation.
Ultimately - as a business owner - I have the choice of doing business with whom I want; just as a prospective customer has the option of doing business with me or not doing business with me.
I've always been very active in our support helpdesk at Woo and I consistently interact with hundreds of WooThemes customers (existing & prospective) every week. Firing any of these customers was never something I even considered for a second (heck, I was even offering people free support in the past), but then I had a couple of really bad experiences with a handful of customers.
So it's based on those experiences that I've decided that there's two reasons for actually firing a customer:
Bad customers are toxic; regardless of how many thousands of customers you have. It's like having that one bad apple in the batch, which infects everything else. I've experienced first hand how a rude / irrational customer interaction can bring a whole team down.
On the flipside, those experiences are just as bad for customers and the outcome is similarly as bad.
Ultimately I believe that the business-to-client relationship should be one of trust / respect and one that is mutually beneficial. As such, if this isn't possible anymore, it's better that there is no relationship, because a pure financial bond isn't enough to keep a relationship going (i.e. I'm no prostitute).