The big picture
Packsie gives your team one dashboard page with everything they need: orders to pack, returns to process, and customer profiles to look up. Instead of managing separate pages with separate permissions, you control it all from a single permissions matrix — choose which roles can see which tabs, and Packsie handles the rest.
Access control works through WordPress’s built-in role and capability system. You don’t need any extra plugins — Packsie creates what it needs when you activate it. But if you want finer control, it plays nicely with role management plugins like Members.
—
Staff Management Feature Toggle
Before creating staff accounts, make sure the staff management feature is enabled. Go to Tracksies > Settings > Features and enable packsie.staff.
This feature toggle controls Packsie’s ability to create and manage warehouse staff accounts with role-based access. When enabled, the Packer role is registered, the permissions matrix is available, and staff accounts are restricted to the dashboard — they see only the packing interface, not WooCommerce admin or other WordPress screens.
If you disable this feature, existing Packer accounts aren’t deleted, but the role-based restrictions and dashboard access checks stop being enforced. Keep it enabled whenever you have active warehouse staff.
—
The Packer role
When Packsie is activated, it creates a new WordPress role called Packer. This role is purpose-built for warehouse staff — it has exactly the permissions needed to work in the staff dashboard and nothing more.
What a Packer can do:
- Read content (required for any WordPress user)
- View WooCommerce orders
- Edit WooCommerce orders (needed to update order status during packing)
- Access the staff dashboard
What a Packer cannot do:
- Access WordPress admin settings
- Install or manage plugins
- Edit pages or posts
- Manage other users
- Access WooCommerce settings
- View customer payment details
This means you can hand a Packer account to warehouse staff without worrying about them accidentally (or intentionally) changing anything important. They log in, they see their tabs, they do their work. That’s it.
—
Adding staff
- Go to Users > Add New User in your WordPress dashboard
- Fill in the username and email address
- Set the Role to Packer
- Click Add New User
The new user can now log in and access the staff dashboard. Give them the URL of your dashboard page (the one with the [tracksies_staff_dashboard] shortcode) and they’re ready to go. Which tabs they see depends on the permissions you’ve configured — more on that in the next section.
Tip: Bookmark the dashboard page on warehouse devices. If you’ve enabled the staff login redirect (see below), packers are taken straight to the dashboard after logging in — no navigation needed.
—
How access is checked
When someone visits the staff dashboard page, the system runs through a series of checks to determine what they’re allowed to see. Understanding this flow helps when troubleshooting “why can’t this person see the dashboard” questions.
The checks happen in this order:
- Are the features enabled? Each tab has a feature flag in Tracksies Settings > Features. If a tab’s feature is turned off, it won’t appear for anyone — not even Administrators. The relevant flags are:
– packsie.staff_dashboard controls the Orders tab
– packsie.returns_tab controls the Returns tab
– packsie.customers_tab controls the Customers tab
- Does the tab have unmet dependencies? Some tabs require other features to be active. The Returns tab requires that
woo.returnsis also enabled — because there’s nothing to show on a Returns tab if the returns system itself is turned off. Even if a role has permission for the Returns tab, it won’t appear unlesswoo.returnsis enabled too.
- Are they logged in? If not, they see a login prompt (or are redirected to the login page, depending on your settings).
- Do they have a capability override? Users with the
edit_shop_orderscapability (Administrators and Shop Managers have this by default) or themanage_packingcapability (added to the Packer role by Packsie) automatically get access to all enabled tabs. No need to add these roles to the permissions matrix — they’re always in.
- What does the permissions matrix say? For everyone else, the system looks up the user’s role in the Tab Permissions matrix (configured in Packsie settings). If their role is in the matrix and has at least one tab ticked, they see those tabs.
- None of the above? Access denied. They see either an “Access Denied” message or are redirected, depending on your settings.
The key takeaway: feature flags come first (they determine what’s available at all), then capability overrides grant automatic access, and finally the permissions matrix controls everyone else.
—
Configuring tab permissions
This is where you decide which roles can see which tabs. Instead of managing separate “allowed roles” lists for packing and returns, you now have one table that maps roles to tabs.
- Go to Tracksies > Packsie in your WordPress dashboard
- Scroll down to the Tab Permissions section
- You’ll see a table with roles as rows and five columns: Orders, Returns, Customers, Refunds, Approvals
- Tick the checkboxes to grant a role each capability
- Click Save Settings when you’re done
What each column controls:
| Column | What it grants |
|---|---|
| Orders | Can see the Orders tab + pack orders |
| Returns | Can see the Returns tab + process returns |
| Customers | Can see the Customers tab + view customer profiles |
| Refunds | Can authorise their OWN refund clicks (without queuing). Without this, their refund clicks queue for an approver. |
| Approvals | Can see the Manager Approvals Queue and act on OTHER people’s queued requests. |
The Refunds and Approvals columns are independent. A Senior Packer might have Refunds (for their own work) but not Approvals (doesn’t review others). A Returns Lead might have Approvals (reviews others) but not Refunds (their own refunds still queue). See Manager Approvals Queue for the full workflow.
What you’ll notice about the matrix:
- Administrator is always present with all three tabs ticked. You can’t remove the Administrator row or untick its boxes — this is a safety net to make sure you can never lock yourself out.
- Each tab can be individually controlled. Maybe your packers should see Orders but not Returns or Customers. Maybe your returns team needs Returns and Customers but not Orders. Tick exactly what each role needs.
- You can add any WordPress role. Below the table you’ll see an — Add role — dropdown. Select a role from the dropdown and click the Add button. A new row appears in the matrix with all tabs unticked — tick the ones that role should access.
- You can remove roles by clicking the X button on the right side of any row (except Administrator).
Example setup for a warehouse with separate packing and returns teams:
| Role | Orders | Returns | Customers | Refunds | Approvals |
|---|---|---|---|---|---|
| Administrator | Yes | Yes | Yes | Yes | Yes |
| Shop Manager | Yes | Yes | Yes | Yes | Yes |
| Packer | Yes | No | No | No | No |
| Returns Processor | No | Yes | Yes | No | No |
| Returns Lead | No | Yes | Yes | Yes | Yes |
In this example, packers see only the Orders tab. Returns staff see Returns and Customers (so they can look up customer details while processing a return). The Returns Lead role adds Refunds + Approvals — they can issue refunds on their own work AND review/approve queued requests from the Returns Processors. Shop Managers and Admins see and do everything.
What gets stored: The permissions are saved in this format: dashboard_permissions with each role mapped to an array of tab slugs. For the example above, that would look like:
'administrator' => ['orders', 'returns', 'customers']
'shop_manager' => ['orders', 'returns', 'customers']
'tracksies_packer' => ['orders']
'returns_processor' => ['returns', 'customers']You don’t need to worry about this format directly — the matrix UI handles it for you. But it’s helpful to know if you’re debugging or working with the data programmatically.
A note on single-tab users: If a user’s role only has permission for one tab, the tab bar is hidden entirely. They’ll see that tab’s content directly without any navigation — which keeps the interface clean for staff who only need one thing.
—
Staff login redirect
For warehouse setups, it’s useful to send staff straight to their dashboard after logging in — instead of the WordPress admin or My Account page.
- Go to Tracksies > Packsie in your WordPress dashboard
- Find the Staff Login Redirect section at the top
- Turn on the Enable Redirect toggle
- Choose where to redirect:
– Select a page from the dropdown (pick your staff dashboard page)
– Enter a custom URL if you prefer (custom URL takes priority over page selection)
- Click Save Settings
When enabled, any user who logs in and matches the redirect criteria will land directly on the dashboard page. Non-staff users (customers, subscribers) are not affected — they continue to their normal destination.
—
What happens when unauthorised users visit
You have two options for handling people who visit the staff dashboard page without the right permissions:
Option 1: Show an access denied message (default)
The page renders normally but instead of the dashboard, the user sees a message: “You do not have permission to access the staff dashboard. Please contact your administrator.” Clean, clear, no confusion.
Option 2: Redirect them somewhere else
- Go to Tracksies > Packsie in your WordPress dashboard
- In the Staff Dashboard section, turn on the Redirect Unauthorized toggle
- Enter a Redirect URL in the text field that appears — where should they go? Your homepage, a “staff only” information page, or anywhere else
- Click Save Settings
How it works:
- If the user isn’t logged in, they’re always redirected to the WordPress login page. After logging in, they’ll be sent back to the dashboard page (assuming they have access).
- If the user is logged in but doesn’t have access, they’re redirected to your configured URL (or the homepage if you haven’t set one).
—
Setting up your dashboard page
The staff dashboard lives on a single WordPress page. Here’s how to set it up:
- Go to Pages > Add New Page in WordPress
- Give it a title like “Staff Dashboard” (this title won’t show if you enable kiosk mode)
- Add the shortcode
[tracksies_staff_dashboard]to the page content - Click Publish
- Go to Tracksies > Packsie and select this page in the Dashboard Page dropdown under Staff Dashboard
- Click Save Settings
That’s it — one page, one shortcode, and the permissions matrix controls who sees what.
Backward compatibility: If you’re upgrading from an earlier version of Packsie that used separate dashboard pages, the old shortcodes still work. Pages with [tracksies_packing_dashboard], [tracksies_returns_dashboard], or [tracksies_staff_hub] will all render the unified dashboard. You don’t need to recreate your pages — but when you’re ready, you can consolidate to a single page with [tracksies_staff_dashboard].
—
Kiosk mode
If your dashboard is running on a dedicated warehouse screen or tablet, kiosk mode creates a clean, distraction-free experience by removing the theme header and footer.
- Go to Tracksies > Packsie in your WordPress dashboard
- In the Staff Dashboard section, turn on the Kiosk Mode toggle
- Click Save Settings
When enabled, the dashboard page shows only the staff dashboard content — no site navigation, no footer, no theme elements. This works best when the dashboard page is bookmarked on the device or set as the browser’s home page.
Important: Kiosk mode only applies to the page you’ve selected in the Dashboard Page dropdown. Other pages on your site are unaffected.
—
Using existing roles
You don’t have to use the Packer role. If your staff already have WordPress accounts with other roles, you can grant them dashboard access in two ways:
Option A: Add their role to the permissions matrix. In Packsie settings, use the — Add role — dropdown to add the role, then tick whichever tabs they should see. This is the recommended approach for most setups because it gives you granular, per-tab control.
Option B: Add manage_packing to their role. Use a role editor plugin like Members to add the manage_packing capability to any existing role. Anyone with that capability automatically gets access to all enabled tabs — no need to add them to the matrix. This is useful if you want a role to always have full dashboard access regardless of the matrix configuration.
Either approach works. Option A gives you finer control (different tabs per role). Option B is broader (full access, no matrix needed).
—
Tips for warehouse setups
- Create dedicated accounts for each staff member rather than sharing logins. This lets you track who packed what.
- Use the Packer role for warehouse-only staff. Don’t give them Shop Manager or Administrator access unless they genuinely need it.
- Bookmark the dashboard page on warehouse devices so staff don’t have to navigate to it.
- Enable the login redirect so packers go straight to their dashboard after logging in.
- Turn on kiosk mode for dedicated warehouse screens to remove all theme distractions.
- Use the permissions matrix to give each team exactly what they need. Packers get Orders. Returns staff get Returns and Customers. Supervisors get everything.
- Consider hiding the admin bar for the Packer role to keep the interface clean. You can do this with a plugin like Members, or with a small code snippet.