Overview
Charge discrepancies — duplicate payments, charges after cancellation, or mismatches between a patient’s bank statement and your records — require a structured investigation before issuing a refund. RepeatMD provides reporting in the Admin Panel and Stripe to confirm what actually posted.
This article is for practice owners, managers, and admins who verify charges on behalf of patients and resolve billing disputes.
Before You Start
You need Admin Panel access and access to your practice’s Stripe Dashboard.
Have the patient’s name, transaction date, and approximate charge amount before you start.
For refunds, confirm the practice has approved the refund. See Issue full and partial refunds (Admin Panel).
Full refunds can be processed in the Admin Panel. Partial refunds and some membership renewal refunds require a support request.
Why It Matters
Unresolved charge confusion erodes patient trust and creates bookkeeping rework. A consistent investigation path helps you:
Confirm whether a duplicate charge is real or a bank authorization/display issue.
Resolve post-cancellation billing quickly when a membership or subscription should have stopped.
Refund with confidence only after validating the charge in Shop Summary and Stripe.
Set accurate patient expectations on timing when a bank is still showing a pending duplicate.
How It Works
Shop Summary Report: Your Admin Panel’s Shop Summary Report lists successful in-app charges in near real time. Use it as the first source of truth for what RepeatMD recorded.
Stripe Dashboard: Stripe shows payment status, refunds, and payouts. Cross-reference Shop Summary totals with Stripe Transactions and Payouts for the same patient and date range.
Bank statements: Banks sometimes show duplicate pending authorizations or delayed status updates even when only one charge succeeded. When Shop Summary and Stripe show a single successful charge, the issue is often on the bank side.
Post-cancellation charges: Charges after a patient cancels a membership or account are generally invalid if cancellation processed correctly. Investigate the cancellation date, last billing event, and dunning status before refunding.
Refunds: Once you confirm an erroneous charge, issue a full refund from the patient’s profile or submit a support request for partial or special-case refunds.
Step-by-Step Instructions
Investigate a reported duplicate charge
Log in to your Admin Panel.
Open the Shop Summary Report and filter to the patient’s transaction date.
Confirm how many successful charges RepeatMD recorded for that patient and amount.
Log in to your Stripe Dashboard.
Open Transactions and search for the same patient, date, and amount.
Confirm whether Stripe shows one or multiple successful charges (not merely pending authorizations).
If both Shop Summary and Stripe show only one successful charge, ask the patient to monitor their bank account and contact their bank — the duplicate may be a display or pending-authorization issue.
If Shop Summary or Stripe shows multiple successful charges, proceed to refund the duplicate after practice approval.
Resolve a post-cancellation charge
Open the patient from Patients in the left-side navigation.
Review membership status, cancellation date, and recent order history. See What happens after membership cancellation (Admin Panel) and View patient order history (Admin Panel).
Compare the disputed charge date to the cancellation effective date.
If the charge posted after cancellation and should not have, confirm practice approval and issue a refund. See Issue full and partial refunds (Admin Panel).
If the patient cannot reach the practice, direct them to App support from Account in the Patient App for RepeatMD assistance.
Issue a refund after confirming an error
Open the patient from Patients in the left-side navigation.
Locate the transaction in their profile.
Click Refund and confirm the full refund amount.
Tell the patient refunds typically post to the original payment method in 3 to 10 business days.
Best Practices and Pro Tips
Always check Shop Summary and Stripe together before telling a patient a duplicate is real.
Document practice approval before processing refunds or contacting support for partial refunds.
Ask about pending vs. posted charges — patients often report duplicates while one charge is still pending.
Review dunning and renewal timing for membership disputes before assuming a post-cancellation charge is erroneous.
Set expectations on Affirm-financed purchases — refund flows differ; see the refunds article for financed purchases.
Common Mistakes and FAQs
Q: Shop Summary shows one charge but the patient’s bank shows two. What now?
A: Ask the patient to watch for the pending authorization to drop off and contact their bank if both charges post. Your records and Stripe should agree before refunding.
Q: A patient was charged after canceling their membership. Is that always wrong?
A: Not always — timing, billing cycle, and dunning can affect the last charge. Compare the charge date to the cancellation effective date and membership billing rules before refunding.
Q: Can I issue a partial refund for a duplicate charge?
A: Partial refunds require a support request. Full refunds for confirmed duplicates can be processed in the Admin Panel.
Q: Where does the patient start if the practice will not refund?
A: The patient can contact RepeatMD through Account → App support in the Patient App.
Q: Does RepeatMD process refunds directly for patients?
A: Refunds are initiated by the practice (or by RepeatMD support on the practice’s behalf after approval). Patients coordinate with the practice first.
Next Steps and Support
Need help? Email support@repeatmd.com

