Title: Sniza Appointment Scheduler
Author: Shehzad Nizamani
Published: <strong>May 22, 2026</strong>
Last modified: May 22, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/sniza-scheduler.svg)

# Sniza Appointment Scheduler

 By [Shehzad Nizamani](https://profiles.wordpress.org/nizamani5/)

[Download](https://downloads.wordpress.org/plugin/sniza-scheduler.1.1.0.zip)

 * [Details](https://wordpress.org/plugins/sniza-scheduler/#description)
 * [Reviews](https://wordpress.org/plugins/sniza-scheduler/#reviews)
 *  [Installation](https://wordpress.org/plugins/sniza-scheduler/#installation)
 * [Development](https://wordpress.org/plugins/sniza-scheduler/#developers)

 [Support](https://wordpress.org/support/plugin/sniza-scheduler/)

## Description

Sniza Appointment Scheduler is a self-hosted booking system for sites that sell 
instructor time in prepaid blocks. Students draw down minutes from packages assigned
by an admin or purchased through WooCommerce, and book appointments against per-
instructor availability.

Features:

 * Per-instructor weekly availability (timeblocks) and ad-hoc time off
 * Configurable package definitions in 30 minute increments up to 4 hours
 * Admin-assigned prepaid packages with optional expiration date and notes
 * Optional WooCommerce integration: mark packages as purchasable and auto-grant
   minutes when an order completes
 * Frontend month calendar with day-level availability indicators
 * Weekly time-slot view with status colours (available, booked, time off, blocked
   by another user, too soon, current)
 * Mobile single-day scheduler with mini calendar
 * Per-user appointment booking and cancellation, with a configurable cancellation
   cutoff
 * “My Lessons” view with AJAX-powered Future / Past filter and in-place cancellation
 * Admin Appointments screen with instructor and date-range filters (defaults to
   the next 3 days, hides cancelled lessons)
 * Configurable maximum appointment length (admin setting)
 * Sample-data tool for seeding and wiping a fixed demo dataset
 * Timezone-aware: each instructor has their own timezone, and end users see times
   in the site timezone

Available shortcodes:

 * `[sniza_scheduler]` — booking UI (month calendar + week grid)
 * `[sniza_packages]` — store front for purchasable packages (requires WooCommerce)
 * `[sniza_my_lessons]` — logged-in user’s upcoming and past lessons with cancel
   controls

## Screenshots

 * [[
 * Admin area where users can select multiple themes and even custom coloring of
   how appointment scheduler look on frontend
 * [[
 * Monthly availability calendar with the weekly slot grid in color theme 1
 * [[
 * Monthly availability calendar with the weekly slot grid in color theme 2
 * [[
 * Monthly availability calendar with the weekly slot grid in color theme 3
 * [[
 * Packages purchase page with one package available for purchase for now
 * [[
 * Confirmation before scheduling an appointment
 * [[
 * My Lessons page with AJAX-powered Future / Past filter.
 * [[
 * Admin creating packages and assigning woocommerce products to the packages
 * [[
 * Admin screen for managing instructors, timeblocks, packages and assignments.
 * [[

## Installation

 1. Upload the `sniza-scheduler` folder to `/wp-content/plugins/`.
 2. Activate the plugin through the **Plugins** screen in WordPress.
 3. Open **Sniza Appointment Scheduler** in the admin sidebar and add at least one 
    instructor, one weekly timeblock, and one package definition.
 4. Either assign a package to a logged-in user from **Assign Packages**, or — with
    WooCommerce active — mark a package as purchasable, link it to a product, and let
    users buy it via `[sniza_packages]`.
 5. Place the `[sniza_scheduler]` shortcode on any page to render the booking UI, and`[
    sniza_my_lessons]` on another page so users can see and cancel their lessons.

## FAQ

### Does the plugin send data to any external service?

No. All data stays in your WordPress database. The plugin makes no outbound HTTP
calls.

### What happens when I delete the plugin?

The plugin’s tables and options are removed via `uninstall.php`. Deactivation alone
leaves the data in place.

### Can guests book appointments?

No. Booking requires a logged-in WordPress user with an active package assignment.

### Is WooCommerce required?

No. WooCommerce is optional. Without it, admins assign packages manually via **Assign
Packages**. With WooCommerce active, packages flagged as purchasable can be sold
through a linked product and minutes are granted automatically when the order completes.

### Can users cancel their own lessons?

Yes, from the `[sniza_my_lessons]` page, as long as the start time is at least the
configured cancellation cutoff in the future (8 hours by default). Cancelling restores
the unused minutes to the source package.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Sniza Appointment Scheduler” is open source software. The following people have
contributed to this plugin.

Contributors

 *   [ Shehzad Nizamani ](https://profiles.wordpress.org/nizamani5/)

[Translate “Sniza Appointment Scheduler” into your language.](https://translate.wordpress.org/projects/wp-plugins/sniza-scheduler)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/sniza-scheduler/), 
check out the [SVN repository](https://plugins.svn.wordpress.org/sniza-scheduler/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/sniza-scheduler/)
by [RSS](https://plugins.trac.wordpress.org/log/sniza-scheduler/?limit=100&mode=stop_on_copy&format=rss).

## Meta

 *  Version **1.1.0**
 *  Last updated **5 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **6.9.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [appointments](https://wordpress.org/plugins/tags/appointments/)[booking](https://wordpress.org/plugins/tags/booking/)
   [calendar](https://wordpress.org/plugins/tags/calendar/)[instructor](https://wordpress.org/plugins/tags/instructor/)
   [scheduling](https://wordpress.org/plugins/tags/scheduling/)
 *  [Advanced View](https://wordpress.org/plugins/sniza-scheduler/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/sniza-scheduler/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/sniza-scheduler/reviews/)

## Contributors

 *   [ Shehzad Nizamani ](https://profiles.wordpress.org/nizamani5/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/sniza-scheduler/)