For tutoring & courses
Tutoring and course marketplaces: the session that never happened
Education marketplaces process enormous counts of small transactions under emotionally loaded cancellation policies. A tutor no-shows, a parent re-books, a policy tier refunds half — every one is a partial against a transferred payout, executed by scheduling software that predates everyone’s attention. Individually invisible; collectively the reason a take rate that reads healthy in the pitch deck lands thinner in the bank account.
Policy-tiered refunds multiply paths
24-hour windows, 50% late-cancel tiers, weather exceptions, first-session guarantees. Each tier is another refund code path, each path another chance for reverse_transfer to stay unset. The flagship booking flow gets tested; the reschedule-with-credit path usually does not — and credits issued as refunds behave differently from account credits in ways worth auditing explicitly.
Modelled volume economics
2,000 sessions weekly at $35 average, platform fee 15%, late-cancel incidence near 11%. About $7.7k weekly flows through refund paths; stranded-at-typical-rates math puts four-figure monthly leakage in tutor accounts — small per incident, permanent in aggregate, and concentrated among exactly the tutors whose schedules generate the most bookings.
- Sessions × price
- 2,000 × $35 = $70,000
- Late-cancel share
- ~11% → $7,700
- Tutor-side transfers at risk
- ~$6,500
- Typical stranding band
- $130–520/wk
Subscription courses: recurring versions of everything
Monthly access billed through Connect repeats every leak monthly and adds proration questions on top. Education framing matters here: proration arithmetic itself sits outside current detectors — stated plainly so nobody buys expectations we do not ship. What does compound detectably is the refund side of mid-cycle cancellations, which behaves like any other partial against transferred payouts.
Seasonal spikes hide drift
Back-to-school and January surges mask slow configuration regressions: a gateway update in August surfaces as mysterious September deltas. Continuous monitoring catches drift at the week it starts rather than at the season-end retrospective.
What FeeGuard does about it
Per-session granularity is native — findings reference exact sessions, tutors and policy tiers. The scanner baselines a term’s history from pasted exports in minutes; read-only monitoring keeps it continuous thereafter, free forever on the detection tier.
Common questions
Do policy-tiered refunds still need both flags?
Yes — every tier that issues actual refunds (not account credits) needs reverse_transfer and refund_application_fee set according to policy. Tiering changes amounts, not mechanics.
Class packages split across several tutors?
Multi-leg pattern — package refunds need per-leg reversal computation or they over/under-recover individual tutors.