Mentor LMS Docs

Tutor Booking

Set up and run the Tutor Booking core module, and learn how tutors and students use it.

The Tutor Booking module turns your Mentor LMS site into an online tutoring marketplace. Instructors become tutors with a public profile and weekly availability. Students find a tutor, pick a time in their own time zone, pay with the gateways you already use, meet online, and review the tutor afterwards. You keep a commission, and tutors withdraw their earnings through the Payouts page that Mentor LMS already has.

Tutor Booking is a core module: it ships inside Mentor LMS, so there is nothing to download or upload. Update your site from the Maintenance page as usual (this creates its database tables), then switch it on under Settings → Plugins → Core modules. You can switch it off again at any time; its data is kept. It needs the Billing module to be on.


1. Introduction

#FeatureWhat it does
1Tutor marketplacePublic directory with search and filters, tutor profiles, subjects, saved tutors
2BookingLive availability, a short hold while the student pays, automatic or manual confirmation
3ChangesCancel with refund rules, tutor reschedule proposals
4Online sessionsMeeting room on Jitsi Meet (no account or keys needed), join window, attendance log, reminders
5RecordingsOptional recording links, only with the student's agreement
6ReviewsStar rating and comment after a completed session, tutor reply, admin moderation
7MoneyEscrow, commission, refunds as student credit, tutor earnings, payouts, admin refund, books check
8Admin toolsOverview, all bookings, finance, reviews, CSV exports

Three kinds of people use the module:

  • Administrators set it up and look after it (sections 2–4 and 8).
  • Tutors are instructors with an approved tutor profile (section 5).
  • Students book and attend sessions (section 6).

2. Set up (administrator)

Step 1 — Switch the module on

Open Settings → Plugins, find TutorBooking under Core modules and switch it on. A Tutoring group appears in the dashboard sidebar. Administrators see: Overview, All bookings, Tutors, Subjects, Subject requests, Finance, Reviews and Settings. Instructors see My tutor profile, Bookings and Earnings.

Students get a My Tutoring entry in their account menu (top-right avatar), which opens their bookings.

Step 2 — Check your email and payment settings

  • Booking emails use your SMTP settings (Settings → SMTP). Without them, people still get in-app notifications but no emails.
  • Students pay with the online payment gateways you have enabled under Billing → Payment Gateways. Offline (manual) payment is not offered for tutor sessions.

Step 3 — Add subjects

Open Tutoring → Subjects. Click New category (for example Mathematics), then add subjects inside it (Algebra, Calculus). Tutors choose from these subjects, and students filter by them. Inactive categories and subjects are hidden from students and tutors.

Step 4 — Review the settings

Open Tutoring → Settings (section 3), then approve your first tutors (section 4).

Add the tutor directory to your public menu: Settings → System → Navbar → Edit Navbar → URL Items → Add Url, with the URL /tutoring/tutors and a title such as Find a Tutor.


3. Settings

Open Tutoring → Settings, change what you need, then click Save settings. Only values you change are stored, so defaults improved in a later Mentor LMS update still reach you.

Booking rules

SettingDefaultMeaning
Allowed session lengths30, 45, 60, 90 minThe lengths a student can choose
Default session length60 minPre-selected length
Slot hold (minutes)10How long a time is reserved for a student while they pay
Minimum notice (minutes)60The soonest a time can be booked
Buffer between sessions (minutes)0Gap kept free between two sessions of the same tutor
Room opens before start (minutes)10How early the session room can be joined
No-show grace period (minutes)15Reserved for no-show handling
Book up to (days ahead)60How far ahead students can book

Booking confirmation

SettingDefaultMeaning
Booking confirmationAutomaticAutomatic: payment confirms the session. Manual: the tutor must accept it first
Tutor response time (hours)24In manual mode, a request the tutor does not answer in time is declined and the student is refunded

Tutors and sessions

SettingDefaultMeaning
Accept new tutor applicationsOnTurn off to stop new applications
Session room servermeet.jit.siJitsi Meet domain. Use your own server for branding and control
Session recordingsOnLets tutors attach recording links, with student consent

Money

SettingDefaultMeaning
Escrow after completion (days)3How long money stays in escrow after a session is completed. 0 releases it immediately
Platform commission (%)Site's instructor revenue shareYour fee. Leave empty to use 100 − instructor revenue from your site settings
First session freeOffA new student's first session costs nothing; the tutor is still paid
Refund when a student cancels24 h → 100%, 12 h → 50%, else 0%The first row that matches how far ahead the student cancels applies

Background tasks

Expired holds, finished sessions, reminders and payment releases are handled automatically while people use the site, at most once a minute. You do not need to set up anything on the server. This card shows when the tasks last ran, and Run tasks now runs them immediately.


4. Manage tutors, subjects and reviews (administrator)

Tutors

Open Tutoring → Tutors. Filter by Pending, Approved, Suspended, Rejected or Draft, or search by name or email.

  • Preview opens the tutor's profile as students would see it.
  • Approve publishes the tutor. The user becomes an instructor, and the tutor is notified.
  • Reject asks for a reason, which is sent to the tutor.
  • Suspend hides a tutor from students; Reinstate brings them back.
  • Feature pins a tutor higher in search results. Verify shows a verified badge.

Every new application also sends the administrator an in-app notification.

Subjects and subject requests

Students who cannot find their subject can submit a request on the Subjects page. Handle requests under Tutoring → Subject requests: write a reply and set the status to Reviewing, Matched (you added or found the subject) or Rejected. If you accept a request, add the subject under Tutoring → Subjects.

Reviews

Tutoring → Reviews lists every review. Use Hide on an inappropriate review: it disappears from the tutor's profile and no longer counts towards their rating. Show again reverses it. The Hidden filter lists hidden reviews.


5. Tutors: become a tutor and manage bookings

Apply

  1. Log in as a student or instructor and open Tutoring → My tutor profile (instructors) or /tutoring/profile.
  2. Fill in the six steps. Each step saves as you go.
StepWhat to enter
1. About youHeadline, an "About you" text of at least 50 characters, country, time zone, languages you teach in
2. TeachingTeaching style, years of experience, "best for", an optional intro video link
3. Subjects & ratesYour hourly rate, an optional trial price, and the subjects you teach
4. ExperienceOptional experience and education entries
5. HoursWeekly hours per day (use Add hours, or copy Monday's hours to Tuesday–Friday), plus days off or extra hours
6. ReviewCheck the profile strength and click Send for review
  1. Wait for approval. While your profile is waiting it is read-only. You receive an in-app notification and an email when it is approved or rejected.

Time zones. Your weekly hours are in your time zone. Students see them converted to theirs, so you never have to calculate.

Trial price. A trial price applies only to the shortest session length and only to a student's first session with you. It never exceeds your normal price.

Handle bookings

Open Tutoring → Bookings:

  • Requests waiting for you: in manual mode, Accept a request, or Decline it with a reason (the student is refunded in full). Unanswered requests are declined automatically after the response time.
  • Upcoming and Past and cancelled list your other sessions. Click one to open its page.

On a booking's page you can:

  • Join session once the room opens (a few minutes before the start).
  • Propose new time: pick a new date and time and an optional reason. The student must accept it; until then the original time stays booked.
  • Cancel session: the student is refunded in full.
  • After the session, reply to the review, and add a recording link if the student agreed to recording.

You also get a reminder 24 hours and 1 hour before each session.

If you do not join a confirmed session, it ends as cancelled and the student is refunded in full. If the student does not come but you did, you are still paid.

Earnings and withdrawals

Tutoring → Earnings shows Released earnings (free to withdraw), Waiting to be released (completed sessions still in escrow, after the platform fee), and a list of recent releases. Click Withdraw to open the standard Payouts page, where released tutoring earnings are added to any course earnings.


6. Students: find a tutor and book

  1. Open the tutor directory (/tutoring/tutors). Search, filter by subject, language, hourly rate and rating, and sort the results. Click the heart on a profile to save a tutor; saved tutors are under /tutoring/favourites.
  2. On a profile, choose a session length and subject, pick a day, then a start time. Times are shown in your own time zone, and the list refreshes by itself so a time someone else just took disappears.
  3. Click Continue. If you are not logged in you are asked to log in or sign up, then brought straight back.
  4. Review the booking: add notes for the tutor, and check the price and tax. Click Continue to payment.
  5. The time is held for you (10 minutes by default) while you Pay now with an online gateway. If you have credit from an earlier refund that covers the price and tax, you can click Pay with credit instead. Release this time gives the time back.
  6. After payment the booking is Confirmed, or Waiting for the tutor if the tutor must accept it first. You are notified by email and in the app.

Your bookings

Open My Tutoring from your account menu. Bookings are grouped as Waiting for payment, Upcoming and Past and cancelled. Open one to:

  • Join session from a few minutes before the start until it ends.
  • Add to calendar with a downloadable .ics file, Google Calendar or Outlook.
  • Cancel session. The page tells you the refund before you confirm.
  • Allow recording: switch this on before the session if you are happy for the tutor to record and share it with you.
  • Answer a reschedule proposal from the tutor: accept the new time or keep the original.
  • After a completed session, rate and review the tutor.

Refunds and credit

Refunds go back to you as credit, not to your card. Credit appears on your bookings page and can pay for a later session in full (price plus tax). The amount depends on who cancels and when:

SituationRefund
You cancel with plenty of noticeAs set by the site (default: 100% at 24 h or more)
You cancel laterA smaller share (default: 50% at 12–24 h, then none)
The tutor or an administrator cancels100%
The tutor does not respond or does not join100%
You cancel while the tutor has not yet accepted100%

7. How the money works

  1. Payment. The payment goes into escrow. Tax is set aside separately.
  2. Completion. When the session is completed and the escrow period has passed, the amount is split: your commission goes to the platform and the rest to the tutor as released earnings.
  3. Cancellation. The refund share goes to the student as credit. The part not refunded (a late cancellation fee) is released to the tutor and platform straight away.
  4. Withdrawal. Tutors withdraw released earnings from Billing → Payouts. You pay them with the payout methods you already use there.
  5. Refund after payout. If a session was already paid out and you must refund it, open Tutoring → Finance and press Refund on the booking. The student receives credit for the full amount and the tutor and commission shares are taken back. A tutor's balance may go negative until later earnings cover it. This can be done once per booking.

Checking the books. Tutoring → Finance shows the total in each account and whether everything balances. The same check is available on the server with php artisan tutoring:reconcile, which reports any booking that does not add up.


8. Reports and day-to-day administration

  • Tutoring → Overview shows the last 30 days: sessions started, paid, completed and cancelled after payment, booking volume, platform commission, average rating, and tutor counts. The Health card shows whether the money books balance and when the background tasks last ran. Two links export Bookings (CSV) and Ledger (CSV) for the last 30 days.
  • Tutoring → All bookings lists every booking. Filter by status or by student or tutor name, and Cancel a booking if needed (the student is refunded in full).
  • php artisan tutoring:rebuild-ratings recomputes every tutor's rating from their visible reviews, if you ever need to repair them.

9. Troubleshooting

ProblemWhat to check
No payment methods on the payment pageEnable at least one online gateway under Billing → Payment Gateways. Offline payment is not offered for tutor sessions
A student says the time disappearedTimes are held for 10 minutes (or your setting). An unpaid hold is released automatically
A tutor does not appear in the directoryTheir profile must be Approved, and not suspended
No emails are sentCheck Settings → SMTP. In-app notifications work without it
The session room does not openIt opens a few minutes before the start (default 10). Check Session room server in Settings if you use your own server
Reminders or payments seem lateThey run when someone visits the site, at most once a minute, so a site with no visitors at all waits for the next one. Use Tutoring → Settings → Run tasks now to run them immediately
Overview says the books do not balanceRun php artisan tutoring:reconcile to list the affected bookings and contact support with the output
The tutor menu is missingThe user must be an instructor with an approved tutor profile, and the module must be switched on

10. Limits of this version

  • Students pay with an online gateway; offline (manual) payment is not available for tutor sessions.
  • Refunds are given as credit. Refunding to the original card or account is a manual action outside the module.
  • Session rooms use Jitsi Meet only. Zoom and custom meeting links are planned.
  • Recordings are links (for example YouTube), not uploads.
  • There is no student–tutor chat yet.
  • Packages, recurring sessions, group classes and coupons are planned for later versions.

On this page