Stripe held $32K over chargebacks: An indie hacker's refund policy gap
A solo developer's SaaS hit $15K MRR. Then a wave of chargebacks revealed a structural gap: no terms of service, no refund policy, and no way to fight disputes.
Background
- User Type
- Indie Hacker
- Business Model
- B2C SaaS (productivity app)
- Structure
- Wyoming LLC, Stripe Atlas setup
What Happened
After a Product Hunt launch brought 500 new customers in one week, 23 filed chargebacks claiming they "didn't recognize" the charge. Without proper terms and refund policies, Stripe ruled against the founder on every dispute.
Timeline: 45 days from first dispute to reserve hold
META Analysis
All revenue through one Stripe account. Reserve hold blocked 25% of monthly revenue. No cash buffer to handle the temporary freeze.
LLC was properly formed, but business operations lacked basic legal protections. No terms of service on the website.
Properly filed, but cash flow disruption made quarterly estimates difficult.
No click-wrap agreement for terms. No refund policy displayed. Customer emails not archived. No evidence to fight disputes.
Resolution
After implementing proper terms, refund policies, and a click-wrap flow, dispute rate dropped to near zero. Reserve was released after 90 days.
Key Lessons
- Add terms of service with clear refund policy before scaling
- Use click-wrap agreements that log user acceptance
- Keep customer communication records for dispute evidence
- Maintain 2-3 months cash buffer for platform holds
Composite scenario based on documented chargeback experiences from indie SaaS founders.
Last reviewed: February 2026
Check your own structural risks
Don't wait for a platform or bank to find the gaps in your structure.
Take the Risk Quiz →