Staff Users
Staff users are internal team members who manage your Saleor store. You can assign staff users specific permissions to control what they can access and do in the Dashboard and API. Staff users are essential for store operations, including product management, order fulfillment, customer support, and more.
Inviting Staff Users
You can invite staff users to your Saleor store using either the Dashboard or the API.
Dashboard
- Go to Configuration → Staff Members.
- Click Invite staff member.
- Enter the staff member’s first name, last name, and email address.
- Click Send Invite.
Saleor will send an email invitation to the provided address. The recipient can set their password and log in using a secure link.
After inviting a staff user, you can assign them to a permission group. For details on permission groups, scopes, and channel restrictions, see the Permissions documentation.
API
You can also create staff users programmatically using the staffCreate mutation
This allows you to assign permissions and add metadata in the same step.
mutation StaffCreate($input: StaffCreateInput!) {
staffCreate(input: $input) {
user {
id
email
}
errors {
field
message
}
}
}{
"input": {
"email": "team.member@example.com",
"firstName": "Team",
"lastName": "Member",
"addGroups": [
"R3JvdXA6MQ=="
]
}
}Resetting Passwords
Staff users can reset their passwords using the Saleor Dashboard or the GraphQL API. Unlike customer password resets, staff members do not require a specific channel to be assigned.
Reset Flow
Resetting a password is a two-step process:
- Click password reset in Saleor Dashboard. Saleor emails the staff user a secure link for setting new password.
- The staff user opens the email, clicks the link, and enters a new password in the Saleor dashboard or a custom backoffice.
Behind the scenes:
- Saleor Dashboard runs
requestPasswordReset, which creates a unique token and embeds it in the link (redirectUrl). - Then, when the user opens link form the email and enters a new password, Dashboard calls
setPasswordwith the user’s email address, token, and new password to securely update the account.
Troubleshooting
Token Invalidation by Login
If a staff user is already logged in (for example, via Single Sign-On) and then tries to use a password reset link, the reset token may be considered invalid.
This is because the token is partially derived from the user’s last login state - if the user logs in after the token was generated (which updates the last_login timestamp), the token no longer matches and is therefore rejected.
Token Expiration
Saleor uses the standard Django PasswordResetTokenGenerator. Tokens are valid for 3 days (259,200 seconds) by default.
A token remains valid until it either expires or the user’s state changes. State changes include:
- The user changes their password
- The user logs in (updating the
last_logintimestamp)
Updating Staff Data
You can update staff user details using the Dashboard or the staffUpdate mutation.
Removing Staff Users
You can remove staff users using the Dashboard or the API:
- Dashboard: Remove staff users from the Staff Members section.
- API: Use the
staffDeleteorstaffBulkDeletemutations.
Saleor prevents removing or deactivating the last active staff user who can manage specific permissions.
Extending Staff Users with Metadata
You can attach custom metadata to staff user accounts for integrations or custom fields.
- To set or update metadata when updating a user, include the
metadataorprivateMetadatafields in thestaffUpdatemutation. - For more granular control, use:
updateMetadatafor public key-value data (visible to apps and staff).updatePrivateMetadatafor secure/internal values (not exposed via the public API).
Dashboard Features for Staff Users
Saleor provides advanced dashboard features to help staff users personalize their workspace and work efficiently.
Saving Filter Presets
You can save filter presets on list views for quick access to frequently used filters (e.g., “Out of Stock Products”, “High-Value Orders”).
To save a filter preset:
- Go to a list view (e.g., Products).
- Apply filters (such as channel or search terms).
- Click the + icon next to the list title.
- Enter a name for your preset and click Save.
Product Grid Customization
You can customize which columns are visible in list views. Rearrange columns by dragging and dropping, or toggle columns on and off. Grid customization is saved per user.
Feature Preview
You can enable preview features from your account settings.
To access feature previews:
- In the left navigation menu, click the ⋮ (three dots) next to your name.
- Click Features Preview.
- Enable or disable available preview features as needed.