Press enter or click to view image in full size
We run several SaaS products at Everhour, all billed through Stripe. Majority of the time everything works fine, but sometimes we get chargebacks. Even thought we do everything possible to prevent them.
We don’t ask for a credit card until the moment of subscription. A few days before each renewal, we send an email notifying the customer about the upcoming charge and giving them time to cancel if they’ve forgotten. After the charge, we send an invoice. Both the invoice and the bank statement clearly display the product name so the customer can easily identify us. Inside the product, we also provide a simple, self-service way to cancel the subscription without any questions asked.
Still, some people prefer to silently file a dispute rather than reach out and ask for a refund.
The worst part is that it doesn’t matter whether you win or lose a dispute — the very fact that it was filed still counts against your account. On top of that, you get hit with extra fees for both the dispute and the counter-dispute, which feels especially unfair when the payment itself is small.
For example:
Press enter or click to view image in full size
Still, we always submit evidence.
To me, blindly accepting a dispute is a de facto admission of wrongdoing, and not fighting against the claims only makes my account look worse. Even if it costs money and time, I’d rather defend the company and show that we don’t agree with absurd claims. On top of that, chargebacks are extremely rare for us, so it’s not a huge waste of time.
That said, when a customer simply asks for a refund, we always meet them halfway. What I don’t understand is why some people can’t just reach out and request it — instead of going straight to a chargeback.
The problem is — it’s not a fair game. Banks almost always side with the cardholder, even when we provide clear logs and evidence. I seriously doubt anyone even reads what we submit.
Stripe doesn’t fight for you either, though they do promote now their paid tool for “automatic dispute handling.” But in my view, if no one cares even when you carefully craft every word of a manual response, then automation is pointless. And if their tool predicts a “dispute win likelihood 5/5” but you still lose the case, then clearly something isn’t working :)
Press enter or click to view image in full size
Recent lost dispute story
A client canceled their subscription in the 3rd month of usage. A few days later they filed a chargeback, claiming: “The company continued charging me after I canceled.”
Press enter or click to view image in full size
Facts:
- Charge was processed August 12 (regular billing cycle).
- Subscription canceled August 18 (6 days later).
- Dispute created August 19.
The claim is false.
All goes through Stripe. It’s not just our words without proof — everything is documented directly in Stripe.
We submitted everything: logs, screens, terms, full context. We still lost.
The bank’s response: “ THANK YOU FOR YOUR RESPONSE. THE MERCHANT S RESPONSE FAILS TO REMEDY THE DISPUTE. THE CARDHOLDER CANCELLED ON THE DATE PROVIDED ON OUR DISPUTE QUESTIONNAIRE. THE CARDHOLDER IS NOT REQUIRED TO PROVIDE PROOF OF CANCELLATION. THE MERCHANT S LIMITED CANCELLATION POLICY BEARS NO RELEVANCE IN A DISPUTE OF THIS NATURE. FULL CREDIT IS DUE ”
Translation: the customer doesn’t have to prove anything, and your terms don’t matter.
The only truly reliable way to win a dispute is if the customer withdraws it themselves. Once they provide proof of withdrawal, you can submit it to Stripe and the dispute gets resolved in your favor.
Another — but this time a won dispute story
One day we received a notice of a dispute. The reason: “Payment disputed because subscription cancelled”.
Press enter or click to view image in full size
The strange part? They had been paying for our subscription for over a year, had a large team, were still actively using our product — and no one had ever canceled the subscription.
We reached out by email to ask what was going on. The customer replied that they had “never authorized the use of this specific card”, claimed we should have used a different one, and said they would continue disputing every future payment until we switch cards.
We explained that only they could update the card in their billing portal, it’s not our responsibility, especially since they had never asked for help with it. And once they updated it, all future payments would automatically be processed from the new card.
When nothing changed, we escalated the issue to the other admins on the account, copying the existing thread, and explained that unless the situation was resolved, we would have no choice but to pause the account — which would affect the entire team.
Another admin quickly replied, explaining that there had been some internal changes and he would now take over billing. We made him the new billing owner, he updated the payment method, and confirmed that they had no complaints with us and that the earlier charges had been reimbursed internally.
After that, the original cardholder confirmed that he had withdrawn the dispute. We asked for proof of the withdrawal, and he provided an official confirmation from the bank. We submitted it to Stripe and only then was the dispute marked as won.
Press enter or click to view image in full size
So here’s my question to the community
What’s really going on here? Why do banks completely ignore the terms customers agreed to when they subscribed or in cases where they’re clearly making false claims? And why aren’t customers required to provide any proof at all?
What actually prevents someone from using a SaaS product, filing chargebacks every time they cancel their subscription, and essentially getting refunded for the last several months of usage?
Would love to hear your thoughts.