Roles & Capabilities
WooCommerce Appointments uses WordPress roles and a granular permissions system to control what each user can do.
Roles
Administrator / Shop Manager
Full access to all appointment features:
- Create, edit, and cancel any appointment
- Manage all products, staff, and settings
- View all appointments across all staff
- Access analytics and reports
- Configure global availability and Google Calendar
Shop Staff
Limited access scoped to their own appointments:
- View and manage appointments assigned to them
- Manage their own availability and Google Calendar sync
- Cannot access other staff members' appointments or global settings by default
The exact capabilities available to staff are controlled by the Staff Permissions system.
WordPress Capabilities
The plugin registers two custom WordPress capabilities:
| Capability | Granted To | Purpose |
|---|---|---|
manage_appointments | Administrator, Shop Manager, Shop Staff | Access the appointments system |
manage_others_appointments | Administrator, Shop Manager | View and edit appointments assigned to other staff |
Shop Staff also receive standard WordPress post-type capabilities for the wc_appointment post type (e.g., edit_appointment, read_appointment, delete_appointment, etc.) and edit_shop_orders for order access.
Staff Permissions
Since 5.2.0
Beyond the basic WordPress capabilities, the plugin provides a granular permissions system for fine-tuning what staff members can do. Permissions can be configured globally (for all staff) or overridden per individual staff member.
Configure Permissions

- Global defaults: Go to Appointments → Settings → Staff Permissions to set the default permissions for all staff.
- Per-staff overrides: Edit a staff member's user profile to override specific permissions for that individual.
Permission Categories
Calendar & Appointments
| Permission | Default | Description |
|---|---|---|
| View Calendar | ✅ | Access the appointment calendar showing their assigned appointments |
| View Appointments List | ✅ | Access the appointments list view filtered to their appointments |
| Change Appointment Status | ✅ | Confirm, complete, or update appointment status |
| Create Appointments | ❌ | Manually create new appointments from the calendar (only for assigned products) |
| Create Appointments for Any Product | ❌ | Create appointments for other staff or unassigned products |
| Cancel Appointments | ❌ | Cancel existing appointments (may trigger refunds) |
Availability
| Permission | Default | Description |
|---|---|---|
| Manage Availability | ✅ | Set personal working hours and availability rules |
Products
| Permission | Default | Description |
|---|---|---|
| View Assigned Products | ✅ | See the products they are assigned to |
| View Product Details | ✅ | See pricing, duration, and capacity for assigned products |
| Create & Edit Products | ❌ | Create new appointment products and edit existing ones |
Customers
| Permission | Default | Description |
|---|---|---|
| View Customers | ❌ | Access customer information from their appointments |
| View All Customers | ❌ | View all customers, not just those who booked with this staff member |
| View Customer History | ❌ | See past appointments and booking history for customers |
| Contact Customers | ❌ | View customer email and phone for direct communication |
Orders
| Permission | Default | Description |
|---|---|---|
| View Orders | ❌ | View orders related to their appointments |
| Create & Edit Orders | ❌ | Create new orders and edit existing ones |
Data & Reports
| Permission | Default | Description |
|---|---|---|
| View Earnings | ❌ | See revenue generated from their appointments |
| Export Appointments | ❌ | Download their appointments as CSV or ICS file |
Permission Presets
To quickly configure staff permissions, use one of the built-in presets:
- Minimal — View calendar and appointments list only. Suitable for staff who just need to see their schedule.
- Standard — Calendar, status changes, create appointments, manage availability, view products and customers. Good for most staff members.
- Full — All permissions enabled. For trusted staff who need complete access.
Start with the Standard preset and adjust individual permissions as needed. You can always override global settings for specific staff members on their profile page.
Permission Dependencies
Some permissions require others to function:
- Changing appointment status, creating, or cancelling appointments requires View Calendar
- Creating appointments for any product requires Create Appointments
- Viewing product details requires View Assigned Products
- Customer history, all customers, and contact require View Customers
Staff Portal
These permissions directly control what staff members see in the Staff Portal — the dedicated admin experience for staff users. Dashboard widgets, menu items, admin bar links, and quick actions all respect the permission settings.