Issue
The Lightspeed connection test is failing with the following errors:
Endpoint /EmployeeHours.json fetch failed due to {"httpCode":"403","httpMessage":"Forbidden","message":"Not Authorized: Insufficient rights to perform the request","errorClass":"InsufficientRightsException"}
Endpoint /PriceLevel.json fetch failed due to {"httpCode":"403","httpMessage":"Forbidden","message":"Not Authorized: Insufficient rights to perform the request","errorClass":"InsufficientRightsException"}
Endpoint /SaleVoid.json fetch failed due to {"httpCode":"403","httpMessage":"Forbidden","message":"Not Authorized: Insufficient rights to perform the request","errorClass":"InsufficientRightsException"}
Environment
Connector: Lightspeed
Answer
This error suggests that the user who created the connection is missing the required permissions in the Lightspeed application needed to access these endpoints. Similar errors may be seen for other endpoints, and similar steps can be taken to address those errors.
You can fix these errors by granting the following permissions to the user creating the connection:
- Settings: Employee Setup
- Settings: Void Sales
- Settings: Basic
These settings can be applied in the Lightspeed application by any user with sufficient rights to modify other users. If you see similar error messages, these are caused by other missing user rights.
If you are granting permission on a role level, follow the steps below to navigate to the Rights page:
- Navigate to Settings.
- In Settings, navigate to the Employee Roles tile.
- In Employee Roles, go to the relevant role (in this example, the Admin role since that is the role we are connecting with).
- Check all applicable settings.
Within this page, can you confirm if you have the following (you can read more about these settings here):
- Settings: Employee Setup
- Settings: Void Sales
- Settings: Basic
Alternatively, you can change individual users' rights by clicking Settings > Employees > Employee Firstname Lastname. Here, navigate to the Rights page to determine the rights available to that user. Below, you can see an example of that file path.
Cause
As mentioned in Lightspeed's Documentation, the Lightspeed API scope is affected by the user's permissions. In the Lightspeed Retail user interface, it's possible to modify role permissions (including admin permissions) and user permissions. These permissions are imposed on the user's API scope.