WidgetsBooking widgetSystem types

Scheduled appointments

The classic appointment flow — dates, time slots, confirmation. Session packs are surfaced here when eligible.

SCHEDULED is the default system type. Patients pick a date, a time slot, and confirm. If the workspace has session packs enabled and the patient is eligible for one with the selected doctor, the pack picker appears inside this flow.

Patient flow

Pick a doctor — skipped if you pass externalMemberId or calendarOnly.

Pick a date on the calendar.
Pick a time slot from the available list.

Enter a phone number or email address, receive a one-time code, and verify. Which channels are offered is set by otpChannels.

Enter patient details (name, gender, age, city).

Optionally choose a session pack — if the patient has an active pack eligible for this doctor, the widget offers to redeem it instead of paying for a new appointment.

Review and confirm on the summary screen.
See the confirmation with the appointment ID.

Confirmation payload

onSuccess fires on the confirmation screen with appointmentId set and queueToken left unset:

MedosBooking.init({
  apiKey: "mk_your_publishable_key",
  onSuccess: (result) => {
    console.log(result.appointmentId, result.paymentMethod.kind);
  },
});

appointmentId is the same whether the patient paid for a new appointment or redeemed a session pack — the pack redemption is recorded server-side against the appointment record. paymentMethod tells you which of pay-at-clinic, online, or a manual method they chose.

When it's used

Scheduled is the default flow. Doctors set up for appointment scheduling in your dashboard get this flow — see Booking system types.

Session packs — when they appear

The pack picker is visible only when all three conditions hold:

  • The workspace has the session-packs feature enabled (workspace licence).
  • The workspace has at least one active session pack configured.
  • The selected doctor is eligible for one of those packs.

If any condition is false, the pack picker is hidden and the flow behaves like a plain scheduled booking. This means enabling packs on a workspace never surfaces UI for doctors who don't have eligible packs — no regression for scheduled-without-packs workspaces.

What patients see

  • Calendar view with dates the doctor has slots on.
  • Slot list per date, grouped by morning / afternoon / evening.
  • Session pack picker on the summary step, when eligible.

Consultation mode

If the doctor offers both in-person and online consultations, a toggle appears above the calendar so the patient can choose. Availability and fees update to match the selected mode.

Doctors who only offer one mode don't show the toggle — there's nothing to choose.

Payment

If the doctor charges a fee and your workspace collects payment online, a checkout step runs before the booking is confirmed. See Online payment.

Bookings that are free, or paid for with a redeemed session pack, skip checkout entirely.

On this page