User Roles
Every role on the platform and a clear who-can-do-what summary.
2 min read
User Roles
Why this matters
Access on NQLA is permission-based (Spatie). Every action — creating a product, approving an inventory request, assigning a driver — is gated by a permission. Each role only sees and does what its permissions allow, so it pays to know which role you (or your staff) hold.
The roles
- Merchant / Client — manages products, inventory requests, orders, returns, wallet, and subscription.
- Delivery Company Admin / Staff — manages drivers, assigns orders to drivers, and the company wallet.
- Driver — executes deliveries and reports the outcome.
- Storage Company Admin / Staff — manages warehouses and confirms (or rejects) inventory requests.
- Admin / Super Admin — full platform management.
- Staff — internal operational role.
- Customer Support — read-only access.
- Pending Company — a newly registered company awaiting approval.
Who can do what (the merchant lifecycle)
| Step | Who acts | Who else is involved |
|---|---|---|
| Create a product | Merchant | — |
| Submit inventory request | Merchant | Admin approves → Storage confirms |
| Create an order | Merchant | Admin approves → Delivery assigns driver → Driver delivers |
| Submit a return | Merchant or Customer | Admin reviews & processes |
| Request a withdrawal | Merchant | Admin approves |
| Manage subscription | Merchant | Billed via Stripe |
The key idea: a merchant starts most flows, but admins, storage companies, and delivery companies must act on them before they complete. You will spend a lot of time watching statuses change.
Where to look
For a deeper, role-by-role breakdown of exactly which screens and permissions each role has, see the Roles section — in particular Client / Merchant.