How to process refund and return requests as Fitness Studio Founders

Customer SupportFor Fitness Studio Founders2 apps11 steps~22 min to set up

A member asks for a refund on a 10-class pack they only used twice after an injury. You're in the middle of teaching a 7am HIIT class, and by the time you see the email it's been 36 hours. You check Mindbody to see their attendance history, cross-reference your refund policy in a Google Doc, manually calculate what's owed, then email back and process the credit in Mindbody or Square separately. If they paid through ClassPass it's a different process entirely. You're doing all of this on your phone between classes. Studios with 200+ members field 10-15 of these a month, and each one takes 20-40 minutes of fragmented time.

Customer SupportFor Fitness Studio Founders2 apps11 steps~22 min to set up
Outcome

What you'll set up

A refund intake and tracking surface that pulls member attendance and billing history automatically — so when a request comes in, you already have the context you need before you reply
An automated triage flow that categorizes refund requests by type (injury, scheduling conflict, dissatisfaction) and drafts a policy-compliant response for your review
A log of all refund decisions with outcomes, so you can spot patterns — which class types generate the most requests, which instructors have the fewest disputes, whether your 30-day policy is actually working
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Apps used
Data sources & config

Starch connects directly to Gmail (scheduled sync) to pull refund request emails and draft replies. Member attendance and billing history from Mindbody and ClassPass are pulled through browser automation — no API needed. Square payment history is queried live from Starch's integration catalog. The refund tracker lives as a custom Starch app built on top of the CRM template, with fields shaped to how your studio actually categorizes disputes.

Prompts to copy
Build me a refund and return tracker for my fitness studio. Each record should include: member name, class pack or membership type they purchased, purchase date, number of sessions used, refund request date, reason category (injury, schedule conflict, dissatisfaction, other), amount requested, amount approved, status (pending, approved, denied, partial), and the final response we sent. I want to filter by status and by date range, and I want a summary at the top showing total refunds issued this month versus last month.
When a refund request email comes into my Gmail, triage it and create a draft reply that includes: the member's name, what they purchased, how many sessions they've used, our refund policy summary, and a proposed resolution based on that policy. Flag any request over $150 for my personal review before sending. Add the request to my refund tracker automatically.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect Gmail to Starch (scheduled sync) so every incoming email is available to the agent — refund requests, billing disputes, and class credit asks all land in one monitored inbox.
2 Point Starch at your Mindbody or ClassPass account through browser automation so it can pull each member's attendance history and purchase records on demand — no API from those platforms needed.
3 Connect Square from Starch's integration catalog so the agent can query payment amounts, transaction dates, and refund history live when processing a request.
4 Install the CRM starter app and describe your refund tracker schema in plain language — tell Starch which fields matter (sessions used, reason code, amount approved) and it builds the surface.
5 Set up the Email Triage app with a filter for refund-related keywords ('refund,' 'credit,' 'cancel,' 'injured,' 'unused classes') so those emails surface immediately rather than getting buried.
6 Configure a draft-reply automation: when a refund email is flagged, Starch pulls that member's attendance and billing data, applies your written refund policy, and drafts a response for you to approve or edit before sending.
7 Add a routing rule: any refund request over a dollar threshold you set, or any request citing a safety incident, gets flagged for your direct review with a priority label rather than auto-drafted.
8 Each approved or denied refund gets logged automatically in your tracker with the reason, the amount, and the response sent — so your records stay current without manual data entry.
9 Set up a weekly summary automation that Starch runs every Monday: count refund requests by category for the past 30 days, flag any member with more than one request in 60 days, and send you the summary via Gmail.
10 Once you have 90 days of data, ask Starch to analyze your refund log and surface patterns — which class formats generate the most requests, whether refund rates correlate with specific instructors or time slots, and whether your current policy is reducing or increasing disputes.
11 Use the refund tracker as an early churn signal: any member who requests a refund but accepts a class credit instead of cash back gets tagged for a follow-up check-in 2 weeks later, drafted automatically in Gmail.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

March 2026 refund queue — 11-day window

Sample numbers from a real run
10-class pack refund (4 sessions used)96
Monthly unlimited — injury cancellation, prorated74
Drop-in class — instructor cancellation22
ClassPass credit dispute0
10-class pack — dissatisfaction, denied per policy0
Monthly unlimited — relocation, 50% approved65

In the first 11 days of March, your studio received 6 refund-related contacts. Starch flagged all 6 from Gmail, pulled each member's attendance from Mindbody through browser automation, and drafted policy-compliant responses for 5 of them — the one injury-related cancellation for $74 was routed to you directly because it involved a liability concern. Total approved refunds: $257. The ClassPass dispute was logged as a third-party issue and forwarded to ClassPass support with the member's booking record attached. The denied 10-class pack request was auto-responded with your 30-day policy language and an offer of a 2-session extension as a goodwill gesture. Total time you spent on all 6: about 18 minutes reviewing and approving drafts, versus the 3-4 hours this would have taken handled individually.

Measurement

How you'll know it's working

Refund rate as a percentage of total revenue — monthly, segmented by class type and membership tier
Average response time on refund requests (hours from email receipt to reply sent)
Refund-to-credit conversion rate — what share of refund requests you redirect into class credits rather than cash back
Repeat refund requests per member — flags potential policy abusers or members who need a proactive conversation
Refund request volume by reason code — injury, schedule conflict, dissatisfaction — tracked month over month to spot instructor or class format issues
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Mindbody's built-in refund and credit tools
Handles the transaction processing, but gives you no cross-member pattern analysis, no automated email drafting, and no way to see refund rates by class format or instructor without manually exporting reports.
Zendesk or Freshdesk
Purpose-built for support ticket management and would handle volume well, but requires a monthly subscription, significant setup time, and doesn't connect to Mindbody or ClassPass attendance data without custom development.
Gmail + Google Sheets manual tracking
Free and familiar, but every refund request is a context-switching event — you're tabbing between email, Mindbody, your policy doc, and a spreadsheet, with no automation and no pattern visibility unless you build pivot tables yourself on Sunday night.
HubSpot Service Hub
Robust ticketing and CRM integration, but priced for teams larger than a boutique studio, requires an admin to configure, and doesn't natively pull fitness platform data like attendance history or class pack usage.
On Starch RECOMMENDED

One platform — crm, founder inbox all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

Mindbody doesn't have an open API for independent studios. Can Starch actually pull my member data?
Yes. Starch automates Mindbody through your browser — it logs in the way you do and pulls attendance records, purchase history, and billing data on a schedule. No API access required. The same approach works for MarianaTek, Wodify, and ClassPass. The tradeoff is that browser automation is slightly less instant than a direct API connection, but for refund processing you're not working in real-time anyway.
Will Starch actually send refund replies to members, or does a human have to approve each one?
That's your call. You can configure it either way. Most studio owners set it up so Starch drafts the reply and you approve it before it sends — takes about 30 seconds per request versus writing from scratch. For low-dollar, clear-cut requests (like a single drop-in class cancellation) you can set an auto-send rule. For anything above a dollar threshold you define, or anything involving an injury, Starch flags it for your review.
What's your refund policy tool storing my member data on? Is it secure?
Starch is not SOC 2 Type II certified today — worth knowing if you're in a market with strict data handling requirements. Member data pulled via browser automation is used to run your workflows and surfaces, not sold or shared. If your studio has compliance obligations around member health data, review Starch's terms before connecting platforms that contain injury or medical notes.
Can the Customer Support Agent app handle refund requests automatically?
Customer Support Agent is currently in development — it's coming soon, not available today. When it launches, it's designed to handle exactly this kind of repetitive ticket type across email and chat. In the meantime, the Email Triage app plus a custom refund tracker built on the CRM starter gets you most of the same outcome: automated triage, drafted responses, and a running log.
We process some payments through Square and some through Mindbody. Can Starch handle both?
Yes. Square is reachable from Starch's integration catalog — the agent queries your transaction data live when it's processing a refund request. Mindbody payment records come through browser automation. You can describe both sources in your refund tracker setup and Starch will pull from whichever is relevant to a given member's purchase.
I have a 30-day no-refund policy but I make exceptions. Can Starch handle nuance like that?
You write your policy in plain language when you set up the draft-reply automation — including the exceptions. Something like: 'Refunds are not issued after 30 days, except for documented injuries or studio-initiated cancellations, where a prorated refund or full credit is offered.' Starch applies that when drafting responses. Edge cases outside those parameters get flagged for you rather than auto-resolved.

Ready to run process refund and return requests on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.