Refunding a client is never the outcome you planned for, but handling it quickly and professionally protects your reputation and keeps the relationship intact. Whether a client purchased the wrong offer, a billing error occurred, or a program simply wasn't the right fit, knowing exactly how to issue a refund in Coachful means you can resolve it in minutes — not days.
This guide covers everything: where refunds live in your dashboard, how Stripe processes the money, what your client experiences, and the edge cases that trip coaches up.
TL;DR — Quick Answer
- Refunds are processed through Stripe Connect, Coachful's payment infrastructure, so funds return directly from your Stripe account to the client's original payment method.
- Navigate to Coach → Billing → Transactions, find the charge, and click Refund.
- You can issue a full refund or a partial refund (custom amount).
- Stripe typically returns funds to the client within 5–10 business days, depending on their card issuer.
- Stripe's processing fee is not returned to you on refunds — only the net amount is reversed.
How Coachful Billing Works (The Context You Need)
Coachful uses Stripe Connect to power all payments. When a client pays for an offer — whether it's a one-time program purchase, a recurring subscription, or a payment plan installment — that money flows directly into your connected Stripe account. Coachful never holds your funds as an intermediary.
Because payments are processed at the Stripe level, refunds are also executed at the Stripe level. When you trigger a refund from your Coachful dashboard, it sends a refund instruction to Stripe, which reverses the charge and routes the money back to the client's original payment method (credit card, debit card, etc.).
This architecture is important to understand for one key reason: Stripe's processing fee (typically 2.9% + 30¢ per transaction) is not refunded to you. Stripe retains its fee regardless of whether a charge is later reversed. The amount deducted from your Stripe balance will be the full original charge, but the Stripe fee portion is a sunk cost.
New to Stripe Connect? If you haven't connected your Stripe account yet, you won't be able to process payments or refunds. Head to Coach → Settings → Billing to complete your Stripe onboarding — it takes about 5 minutes. Learn more about setting up Stripe Connect on Coachful.
Step-by-Step: How to Issue a Refund in Coachful
Follow these steps to refund a client from your Coachful coach dashboard.
- Sign in to your Coachful workspace at app.coachful.co/sign-in.
- In the left sidebar, go to Coach → Billing → Transactions. This page lists every charge processed through your account.
- Use the search bar or date filters to locate the specific transaction you want to refund. You can search by client name, email address, or offer name.
- Click the transaction row to expand its details. You'll see the charge amount, date, offer name, and payment method.
- Click the Refund button in the transaction detail panel.
- A modal will appear asking you to choose between a Full Refund or a Partial Refund. For a partial refund, enter the specific dollar amount you want to return.
- Add an optional internal note to document the reason for the refund — this is visible only to you and your team, not to the client.
- Click Confirm Refund. The instruction is sent to Stripe immediately.
Once confirmed, the transaction will update to show a Refunded or Partially Refunded status badge. The client will receive an automated email notification from Stripe confirming that the refund is on its way.
Full Refunds vs. Partial Refunds
Coachful supports both refund types. Here's when to use each:
Full Refund
Use a full refund when you want to return the entire charge amount. Common scenarios include: a client purchased the wrong offer, a duplicate charge occurred, or you've mutually agreed to end the engagement before it began. A full refund voids the transaction completely in Stripe's records.
Partial Refund
A partial refund returns a specific amount less than the original charge. This is useful when a client completed part of a program before requesting a refund, or when you want to apply a courtesy discount after the fact. For example, if a client paid $997 for a 12-week coaching program and completed 6 weeks, you might issue a $400 partial refund to acknowledge the remaining weeks they won't use.
You can issue multiple partial refunds against a single charge, as long as the cumulative refunded amount doesn't exceed the original charge. Stripe will block any refund request that exceeds the original transaction amount.
Refunds for Subscriptions and Payment Plans
Recurring billing and installment plans require a slightly different approach.
Subscriptions (Recurring Offers)
If a client is on a monthly or annual recurring subscription, each billing cycle creates a separate charge. To refund a specific cycle, locate that cycle's individual transaction in Billing → Transactions and refund it directly. Issuing a refund does not automatically cancel the subscription — you need to cancel the subscription separately to prevent future charges.
To cancel a subscription, go to Coach → Clients → [Client Name] → Subscriptions and click Cancel Subscription. You can choose to cancel immediately or at the end of the current billing period. Always cancel before or alongside a refund to avoid charging the client again next cycle.
Payment Plans (Installments)
Payment plans split a single offer price into multiple scheduled installments. Each installment is its own Stripe charge. You can refund any individual installment from the Transactions page. If a client wants out of a payment plan entirely and you're refunding all collected installments, you'll need to refund each charge individually and then cancel the remaining scheduled payments from the client's subscription settings.
Pro tip: Before processing a refund for a subscription or payment plan client, always cancel their access to the program or offer first. Go to Clients → [Client Name] → Programs and revoke enrollment. This prevents an awkward situation where a refunded client still has full platform access. You can re-grant access at any time if needed.
What the Client Experiences
Understanding what your client sees helps you communicate proactively and avoid confusion.
- Stripe email notification: Stripe automatically sends the client a refund receipt to their email address on file. The email states the refund amount and the expected processing time.
- Processing time: Funds typically appear back on the client's card within 5–10 business days, though some card issuers process refunds faster (sometimes within 2–3 business days). Coachful and Stripe have no control over the card issuer's posting speed.
- Platform access: Unless you manually remove the client's access to a program or squad, a refund alone does not revoke their Coachful account or program enrollment. You must handle access separately.
- No client-facing refund portal: Clients cannot request or process refunds themselves. All refunds are initiated by the coach (or an admin/editor with billing permissions). If a client wants a refund, they should message you directly or submit a dispute — both of which come to your attention through the platform or Stripe.
Handling Stripe Disputes and Chargebacks
A chargeback happens when a client contacts their bank or card issuer directly instead of coming to you. Stripe will notify you via email and flag the dispute in your Stripe dashboard. Coachful's Transactions page will also reflect the disputed status on the relevant charge.
When a dispute is filed, Stripe temporarily deducts the disputed amount from your balance plus a $15 dispute fee. To fight the dispute, you submit evidence through your Stripe dashboard — things like signed agreements, email correspondence, session logs, and program access records. Coachful's session and message history can be exported to support your case.
The best way to avoid chargebacks is to have a clear, written refund policy that clients acknowledge before purchasing. You can embed your refund policy in your offer page checkout flow using Coachful's website builder — clients must scroll past it to complete payment.
Coaches on Coachful who publish a clear refund policy on their offer pages report significantly fewer disputes. Transparency at checkout builds trust and sets expectations before money changes hands.
Who Can Process Refunds? (Roles & Permissions)
Not everyone on your team has refund access by default. Here's how roles map to billing permissions:
- Super Coach (Owner): Full access to all billing and refund functions.
- Admin: Can view transactions and issue refunds.
- Editor: Can view billing but typically cannot issue refunds — confirm with your workspace settings.
- Coach (team member): Does not have access to the Billing → Transactions section by default.
- Virtual Assistant: No billing access unless explicitly granted by the owner.
- Member / Client: No billing access whatsoever.
If you need a team member to handle refunds on your behalf, check their role under Settings → Team and adjust permissions accordingly. When in doubt, handle refunds yourself or have your admin do it — billing access should be limited to trusted team members only.
Common Mistakes and Troubleshooting
The Refund button is grayed out or missing
This usually means one of three things: (1) the charge was already fully refunded, (2) the transaction is in a pending state and hasn't fully settled yet — wait 24–48 hours for the charge to clear, or (3) your Stripe account is in a restricted state. Check your Stripe dashboard at dashboard.stripe.com for any outstanding verification requirements.
I issued a refund but the client says they haven't received the money
Refunds can take up to 10 business days to appear depending on the card issuer. Ask the client to check with their bank. You can confirm the refund was successfully submitted by checking the transaction status in Billing → Transactions (it should show "Refunded") and by verifying it in your Stripe dashboard under Payments → Refunds.
I accidentally refunded the wrong transaction
Unfortunately, refunds cannot be reversed once submitted to Stripe. If you refunded the wrong client, you'll need to re-charge the correct client manually or issue a new invoice. Contact Coachful support via your dashboard if you need help navigating this.
The refund amount is more than I expected to lose
Remember that Stripe's processing fee is not returned to you. If a client paid $500 and you issue a full refund, your Stripe balance will be debited $500 (the full charge), but the ~$14.80 in Stripe fees you originally paid remains gone. Factor this into your refund policy — some coaches deduct the processing fee from refunds for services already rendered.
I need to refund a client who paid via a coupon or discount
Refunds are always based on the actual amount charged, not the pre-discount price. If a client used a coupon and paid $400 instead of $500, a full refund returns $400 to them — not $500. Coachful's transaction records reflect the net charged amount, so the Refund modal will show the correct figure automatically.
My client wants a refund but their subscription already renewed
Refund the most recent renewal charge individually from the Transactions page, then cancel the subscription immediately to prevent another renewal. If the client also wants a refund on previous months, each charge must be refunded separately.
Best Practices for a Smooth Refund Process
- Define your refund policy upfront. A clear "no refunds after 14 days" or "pro-rated refunds only" policy, displayed at checkout, eliminates most disputes before they start.
- Act quickly. Processing a refund within 24–48 hours of a request signals professionalism and prevents the client from escalating to a chargeback.
- Document everything. Use Coachful's internal notes on the transaction to log the reason and any agreements made. This protects you if a dispute arises later.
- Communicate personally. Don't let the Stripe automated email be the only communication. Send the client a brief message through Coachful's direct messaging acknowledging the refund and wishing them well — it leaves the door open for a future relationship.
- Review your offer structure. If you're issuing refunds frequently, it may signal a mismatch between how your offer is positioned and who's buying it. Use Coachful's intake calls and intake forms to pre-qualify clients before they purchase.
Ready to Manage Billing With Confidence?
Issuing a refund in Coachful is a straightforward, two-minute process — but understanding the full picture (Stripe fees, subscription cancellations, access revocation, and dispute prevention) is what separates coaches who run tight, professional operations from those who face recurring billing headaches. With all your transactions, client records, and program access controls in one place, Coachful gives you everything you need to handle refunds cleanly and move on.
If you're not yet using Coachful to manage your coaching business, start your free trial today and experience a billing workflow built specifically for coaches. Already a member? Sign in to your workspace and head to Billing → Transactions to get started.