Initial purchase and attendance
Initial purchase is not a consultant approval-then-payment workflow. Approval in the
rescheduling flow below applies after a replacement time has been applied.
Recover a missed session
- The owning consultant sends a reschedule prompt for an eligible missed session.
- The student receives email and an in-app notification and opens that session’s rescheduling UI. The prompt itself changes no booking dates or payment state.
- The student selects a replacement time. Availability, fees, limits, minimum notice, and cooldowns still apply. The student can also start without a prompt.
- With no fee, the backend applies the replacement dates immediately. With a fee, dates are applied after successful backend payment processing.
- The consultant or an admin approves the
rescheduledsession, changing it toscheduled. Both participants attend the replacement session with fresh attendance tracking.
Purchase the consultation again
- The student chooses the same consultation and a new available date/time.
- The frontend checks
canPurchase, not justisEnrolled. Existing consultation enrollment does not block a repeat purchase, even if an earlier booking is active. - The student completes a new checkout at current pricing. Rebooking creates a separate order, enrollment, booking, and session set; earlier records stay unchanged.
Delivery and validation boundaries
Backend implementation and documented contracts do not prove that all frontend clients or live integrations have been updated. Verify notification navigation,canPurchase handling, actual payment callbacks, worker execution, and release
behavior with the QA checklist.