ProSchedule supports three use cases so CodeCanyon buyers can run the same product as a SaaS platform, a single-organization scheduler, or a personal appointment calendar.
Use Cases
| Mode | Best for | What you get |
|---|---|---|
| SaaS Platform | Agencies reselling ProSchedule, multi-company platforms | Workspaces, team roles, subscription plans, Stripe billing, usage limits, CRM |
| Organization | One clinic, company, or practice | Staff users, organizations, contacts, notes, scheduling. No SaaS billing |
| Personal | One professional | Event types, calendar, and appointments for a single person. No SaaS or organization tools |
Official live demos: SaaS · Organization · Personal. Product landing page: landing.softentra.com/pro-schedule.
Choosing a Use Case During Installation
The wizard Use Case step comes after license verification, before environment and database.
- SaaS Platform — Workspaces, subscription billing, usage tracking. The admin account receives a default workspace. Home and
/appointmentbehave like a marketplace. - Organization — One business with staff and CRM. SaaS features stay hidden. This is the installer default.
- Personal — One professional calendar. Organization, staff, and SaaS features stay hidden. The admin is given a username and marked available so
/u/{username}works at once.
You can change this later without reinstalling. Full wizard: Installation process.
Enabling or Changing After Installation
Go to Dashboard → Settings → Global.
Use Case section
Pick SaaS Platform, Organization, or Personal. Changing the use case applies the matching feature set.
Pricing
The public /pricing page toggle is available only in SaaS Platform mode.
Application Modules section
Chat, FAQ, Blog, Notes, Contacts, and Organizations can be toggled in SaaS and Organization modes. Personal mode keeps organization, contacts, notes, chat, blog, FAQ, and registration off.
Important notes
- Leaving SaaS Mode does not delete workspace or subscription data — it becomes dormant
- Leaving SaaS Mode is blocked while active paid Stripe subscriptions exist
- Leaving SaaS Mode automatically turns off the public Pricing page toggle
- A confirmation dialog appears before leaving SaaS Mode
What Changes in Organization Mode
| Area | Behavior |
|---|---|
| Workspaces menu | Hidden |
| Subscription Plans menu | Hidden |
| Workspace switcher (header) | Hidden |
/pricing public page |
Returns 404 |
| Usage limits | Bypassed (unlimited) |
| Organizations, Contacts, Notes, Staff | Available |
| Public registration | Off by default |
| Event booking payments | Unchanged — still works |
What Changes in Personal Mode
| Area | Behavior |
|---|---|
| SaaS features | Hidden (same as Organization) |
| Organizations, Contacts, Notes | Hidden |
| Manage Users and User Roles | Hidden |
| Chat, Blog, FAQ, registration | Hidden |
| Event types, schedules, public booking | Available |
| Event booking payments | Unchanged — still works |
Public Site by Use Case
The landing layout is shared. Install and demo import seed different default copy. Changing the use case later does not overwrite pages an admin has already edited in Front Pages.
| Page | SaaS Platform | Organization | Personal |
|---|---|---|---|
| Home | Marketplace copy, browse professionals, join as a professional | Book with this practice; no worldwide directory | Book with this professional; no category marketplace |
/appointment |
Directory of available professionals | This practice's staff | Redirects to /u/{username} |
| FAQ | Platform Q&A | Booking, reminders, and payments | Module off by default |
| Contact | Sales / support tone | Practice inquiries | Module off by default |
| Nav / footer | Register, Pricing, Blog, FAQ when enabled | No Register (registration off). FAQ/Blog/Contact follow modules | Register, FAQ, Blog, Contact, and Pricing stay hidden |
Hero and other CMS buttons that still point at /register, /pricing, /faq, /blog, or /contact are rewritten to /appointment when that module is off.
The installer admin account is created with a public username and marked available so Personal Mode can open /u/{username} immediately.
What Changes in SaaS Mode
Full multi-tenant behavior:
- Workspaces with owner/admin/member/viewer roles
- Team invitations by email
- Subscription plans (Free, Starter, Professional, Enterprise)
- Stripe checkout and recurring billing
- Usage limits for appointments, event types, and team members
- Admin management of subscription plans
- Public pricing page (when Pricing toggle is also enabled)
- Organizations, contacts, and public registration
Subscription Plans vs Event Payments
These are separate systems:
| System | Purpose | Configuration |
|---|---|---|
| SaaS subscriptions | Workspace owners pay for platform plans | SaaS Mode + Stripe + Admin → Subscription Plans |
| Event payments | Clients pay for booked appointments | Settings → Payment Configuration |
Disabling SaaS Mode does not affect event booking payments.
Default Plans
When SaaS Mode is enabled, four plans are seeded:
| Plan | Price | Users | Appointments/mo | Event Types |
|---|---|---|---|---|
| Free | $0 | 1 | 10 | 3 |
| Starter | $9.99 | 3 | 100 | 10 |
| Professional | $29.99 | 10 | 1,000 | Unlimited |
| Enterprise | $99.99 | Unlimited | Unlimited | Unlimited |
Manage plans at Dashboard → Settings → Subscription Plans (admin only).
Demo data and live demos
A normal install is empty of sample appointments. That is correct for a real business.
Import sample data (demo databases only)
php artisan command:import_demo
php artisan command:import_demo saas
php artisan command:import_demo organization
php artisan command:import_demo personal
With no argument, the command follows the installed use case.
| Command | Seeds | Demo logins |
|---|---|---|
saas |
Marketplace professionals; named guests matched to doctor / stylist / dentist; 8 marketplace blog posts; named organizations, contacts, notes, and chat | ahmad.khan@mail.com, zubair.shafi@mail.com, junaid.abbasi@mail.com |
organization |
Clark Street Clinic, three doctors, patients, clinical notes, clinic blog and chat | ahmad.khan@mail.com, omar.farooq@mail.com, yusuf.siddiqi@mail.com |
personal |
Faisal Malik Counseling, therapy clients and sessions | faisal.malik@mail.com |
Password for imported demo users: Password@secret.com.
import_demo truncates users. Never run it where you have real customers.
On a public demo host set:
APP_DEMO=true
APP_DEBUG=false
DEMO_USE_CASE=
APP_DEMO=true turns on named brands (ProSchedule, Clark Street Clinic, Faisal Malik Counseling). Leave DEMO_USE_CASE empty so the database use case wins.
Official live demos
| Edition | URL |
|---|---|
| SaaS Platform | https://saas.proschedule.softentra.com |
| Organization | https://org.proschedule.softentra.com |
| Personal | https://personal.proschedule.softentra.com |
Product overview landing page: https://landing.softentra.com/pro-schedule/
Upgrading an Existing Installation
If you update from a version with only SaaS vs Standard:
- Run migrations —
deployment_modeis added automatically (saasif SaaS was on, otherwiseorganization) - Change the use case in Settings → Global if you want Personal Mode
Fresh installs default to Organization unless you choose another use case in the installer.
Troubleshooting
SaaS menus still visible after switching
Clear application cache:
php artisan cache:clear
php artisan config:clear
Then hard-refresh the browser.
Cannot leave SaaS Mode
Active paid subscriptions must be canceled first. Check Workspaces → Billing for each workspace with a paid plan.
Workspaces exist but SaaS is off
This is expected. Data is preserved. Switch back to SaaS Platform to restore access.
Related documentation:
← All ProSchedule – Online Appointment Booking Software for Service Businesses documentation