It's not a widely covered topic, but dealing with disputes on Stripe can be a major headache. Here are some common pitfalls merchant's fall into when dealing with disputes.
1. Blocking payment acceptance on zip code mismatch
Please please please don't do this! This is a default rule that Stripe ships with, however if you're selling a low ASP good/service (or just dealing with a lower quality consumer), you will be blocking tons of legitimate payments. Customers could be paying with a business card (where the issued state may not match the zip code they live in), or could have moved locations & not know which zip is on the card. Even worse, in some countries (e.g. Vietnam), cards don't have zip codes associated with them, in which case this block rule would fail every time.
This Stripe merchant was blocking roughly $8-16K in revenue from a single overly zealous block rule.
You may be thinking - "well I sell into the US, this doesn't apply to me". Wrong! We've observed merchant data for Stripe businesses selling into only US customers and saw this block rule erroneously blocking 4-8% of total revenue. This alone could be enough to turn a breakeven business unprofitable.
Instead, remove the rule and deal with the potential rise in disputes downstream with a tool like Chargeblast.
2. Refunding every Early Fraud Warning (EFW)
While this is commonly touted as reasonable advise, this is another huge mistake:
Stripe provides a webhook you can listen to for so called "Early Fraud Warnings". It is common practice to refund the EFWed transaction whenever this webhook is received in order to avoid a potential chargeback, but this is also a costly mistake.
The issue with EFWs, also called TC40 reports, is that they are simply an indicator of a potential chargeback. They are filled out by the banks whenever a customer reports their card as lost or stolen, and get issued for all of that customer's recent transactions - so plenty of legitimate transactions will get EFWs. These legit transactions won't end up turning into chargebacks, so by refunding them you are providing a customer with a refund on the house 😔
Based on data released by Stripe and the card networks, EFWs only turn into chargebacks ~50% of the time. Not only that, but most chargebacks don't have an EFW associated with them (only about 30% do), so by refunding every EFW, you are refunding customers you shouldn't and you'll only reduce your dispute rate by ~15%.
It is better than nothing, but for merchants that are operating at scale & that are margin sensitive, there are smarter methods to deal with chargebacks. Chargeblast provides alerts that are sourced directly from the card networks, i.e. Visa and Mastercard, and are guaranteed to turn into chargebacks if not refunded. Not only that, but we also have 99% coverage on VISA related transactions and 90%+ for Mastercard, for an overall coverage rate of 93%+.
3. An overly defensive refund policy
This one is obvious, but many merchants in a fear of getting kicked off Stripe for excessive dispute rates, will push their customers to instead request a refund.
While this potentially solves your dispute issue, by pushing customers to refund, you will be triggering customers who never would have asked for a refund to request one. This can be devastating for the bottom line of businesses operating at narrow margins.
By attaching the /refund short-link in your billing descriptor, you will certainly cause customers to request a refund instead of charging back, but you are going to induce customers that never would have asked for a refund. We've also seen merchants plaster refund request forms all over their app. Please don't do this.
Instead, let the customer initiate the dispute and then refund it via a Chargeblast alert, thereby saving your merchant account the ding in dispute, and avoiding refunding away all your hard earned revenue.