Bugs Found in Connecteam SaaS

Connecteam

Connecteam is a robust web platform for workforce management. Its key strengths include a stable core scheduling workflow, an intuitive UI, consistent navigation patterns, and fast rendering across most views. We would also commend the modern React architecture with modular services and a good onboarding experience for trial users.

QAwerk engineers conducted a bug crawl of Connecteam, focusing on functional workflows, data consistency, permission logic, offline behavior, and UI/UX quality. We can report that the platform demonstrates good performance and architectural maturity for core scheduling, user management, and communication features. Navigation is logical, UI design is modern, and most essential CRUD flows work as expected.

However, during testing, we discovered several issues, including mishandled permissions and access control, and offline/sync failures. None of the issues were full-system blockers, but several could lead to data inconsistencies, silent data loss, or confusing UX in production environments. We invite our readers to study the complete list of bugs and their impact on the platform’s usability and security.

Shifts are assigned before employee's employment start date

Severity:

Major

Precondition:
  1. An Admin account exists in Connecteam.
  2. Test User2 account with start date1 (e.g., 10/01/2026) is active.
Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Navigate to the “Schedule” section.
  3. Create or assign a shift for Test User2 on a date before 10/01/2026 (e.g., 05/01/2026).
  4. Save the shift.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

The system successfully creates and assigns the shift without displaying any validation errors or warnings. Moreover, the user appears in the schedule before their official employment start date.

Expected Result:

The system should either prohibit assigning shifts prior to the “Employment Start Date”, display a clear validation error or warning, or disable dates prior to the “Employment Start Date” in the scheduling calendar.

Shifts are assigned before employee's employment start date
Shifts are assigned before employee's employment start date

Archived (deactivated) users can still be contacted via Chat

Severity:

Major

Precondition:
  1. An Admin account exists in Connecteam.
  2. Test User2 account exists.
Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Archive (deactivate) User2.
  3. Open the “Chat” feature.
  4. Attempt to find User2 and send a message.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

  • The archived User2 is still visible within the chat.
  • Messages can be successfully sent to User2 despite their account being deactivated.
  • There is no warning or notification indicating that User2 is inactive or archived.
Expected Result:

One of the following actions should occur:

  • Archived users, such as User2, should not appear in chat conversations.
  • Chats with archived users should be disabled, and a clear message should indicate that the user is inactive.
  • The ability to send messages to archived users should be blocked, with an appropriate error message displayed.
Archived (deactivated) users can still be contacted via Chat

Persistent loading spinner on “Activity” page

Severity:

Major

Precondition:

An Admin account exists in Connecteam.

Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Navigate to the “Chat” section or open the “Add user/Add admin” dialog.
  3. After the page or dialog has fully loaded, navigate to the “Activity” → “Activity Log” section.
  4. Observe the page.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

The “Activity” page is continuously displaying a loading spinner within its content area. In many instances, the spinner remains visible for prolonged periods or indefinitely, rendering activity data inaccessible. Although the page occasionally finishes loading, the load time is noticeably longer than in other sections.

Expected Result:

The activity data should load in a reasonable time frame upon accessing the “Activity” page. When there is no data or an error occurs, a clear empty state or a specific error message should be shown to the user, rather than a continuous spinner. The loading process of the “Activity” page should remain unaffected when navigating from other modules, such as the “Chat”, “Add User/Admin”, etc.

Shifts created offline do not sync after reconnection and remain only visible in user interface until manual page refresh

Severity:

Major

Precondition:

An Admin account exists in Connecteam.

Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Navigate to the “Schedule” section.
  3. Disable the network connection either through the “DevTools” under “Application” → “Offline” or disconnect manually.
  4. Create a new shift.
  5. Turn the internet connection back on.
  6. Observe the “Schedule” and network activity.
  7. Refresh the page.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

The shift created offline remains visible in the user interface while offline. Post reconnection, no sync occurs, so the shift is not sent to the backend. After a manual page refresh, the shift is no longer present, indicating that the changes were discarded without any notification. An error message is displayed, but no retry or sync mechanism is provided.

Expected Result:

The platform should offer one of the following options:

  • Option A (Full offline support): The shift should be queued locally and sync once the connection is restored. If sync fails, a retry option should be displayed.
  • Option B (No offline support): The option to create a shift offline should be blocked. A clear message stating, “Unable to create shifts without a connection” should be displayed. No changes should appear in the user interface unless they are successfully applied.

Document reminder is sent, but user does not receive any notification

Severity:

Major

Precondition:

An Admin account exists in Connecteam.

Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Navigate to the “Documents” section.
  3. Click any required document cell (+).
  4. Do not upload any file.
  5. Click the “Remind” button and send a reminder.
  6. Observe the result.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

The user interface displays a “Reminder sent” badge, but the user does not receive any reminder email or notification.

Expected Result:

The user should receive a notification: this could be an email, push, or an in-app notification, with a request to upload the document. The system should accurately track the delivery status.

Unhandled promise rejection on dashboard when Benefits/Tokens services return “AdminNoAccessHTTPError” (433)

Severity:

Minor

Steps to Reproduce:
  1. Log in to Connecteam.
  2. Navigate to the “DevTools” → “Console” section.
  3. Wait until the dashboard loads.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

  • Requests to /api/Benefits/Tokens/Activation/ and /api/Benefits/Tokens/Purchase/ return a 433 response.
  • API body: AdminNoAccessHTTPError: Admin does not have permission to access this service.
  • The console shows “Uncaught (in promise)” with status 433.
Expected Result:
  • The front-end must correctly manage ‘no access’ responses (using catch and fallback methods).
  • There should be no unhandled promise rejections in the console.
  • The user interface should either hide or disable Benefits/Tokens-related widgets/menus, or display an appropriate empty state.
Unhandled promise rejection on dashboard when Benefits/Tokens services return “AdminNoAccessHTTPError” (433)

System allows scheduling shifts in past with no warnings or restrictions

Severity:

Minor

Precondition:
  1. An Admin account exists in Connecteam.
  2. Test User2 account with start date1 (e.g., 10/01/2026) is active.
Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Navigate to a past date relative to today (e.g., 05/01/2026).
  3. Create and assign a shift for any user.
  4. Save the shift.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

The shift is successfully created and assigned to a past date, with no warnings or restrictions.

Expected Result:

The system should prevent scheduling shifts in the past or, if allowed, it should:

  • Display a confirmation or warning message (e.g., “You are scheduling a shift in the past”).
  • Clearly mark past shifts as historical or read-only.
System allows scheduling shifts in past with no warnings or restrictions

UA phone number validation handled incorrectly

Severity:

Minor

Precondition:

An Admin account exists in Connecteam.

Steps to Reproduce:
  1. Log in to Connecteam as an Admin User.
  2. Navigate to the “Add more admins to your launch pad” section.
  3. Select UA +380 in the “Mobile phone” field.
  4. Open the “DevTools” → “Console” section.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

Console returns error messages such as “Cannot parse phone number +380 (is it missing a “+” or a country code?)” and internal validation fails. Despite these internal errors, no clear error messages are displayed to the user within the user interface.

Expected Result:

Ukrainian phone numbers that are correctly formatted should pass validation. No errors should be returned in the console. If the format is incorrect, a validation message should be clearly displayed to the user in the user interface.

UA phone number validation handled incorrectly
UA phone number validation handled incorrectly

“Benefits/Tokens” API is triggered on dashboard for admins lacking access, rather than bypassing these requests

Severity:

Minor

Precondition:

A Connecteam account without access to Benefits/Tokens exists.

Steps to Reproduce:
  1. Log in to Connecteam.
  2. Navigate to the “DevTools” → “Console” section.
  3. Wait until the dashboard loads.
  4. Observe the automatic calls on the dashboard load.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

Front-end automatically calls /api/Benefits/Tokens/* and receives a “433 AdminNoAccessHTTPError”.

Expected Result:

The front-end should initially check entitlements/permissions or use a capabilities endpoint. If the service isn’t available for this admin/plan, the relevant calls should be bypassed, and the user interface element should be hidden or disabled.

“Benefits/Tokens” API is triggered on dashboard for admins lacking access, rather than bypassing these requests

API returns non-standard HTTP status code 433 for “no access” errors

Severity:

Minor

Precondition:

A Connecteam account without access to Benefits/Tokens exists.

Steps to Reproduce:
  1. Log in to Connecteam.
  2. Navigate to the “DevTools” → “Console” section.
  3. Wait until the dashboard loads.
  4. Observe the automatic calls on the dashboard load.
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

After the dashboard finishes loading, /api/Benefits/Tokens/* returns an HTTP 433 with the error type classified as “AdminNoAccessHTTPError”.

Expected Result:

The API should use standard HTTP status codes like 403 “Forbidden” or 401 for authorization issues. If required for debugging or other purposes, type, exception, and requestId could be maintained in the response body.

API returns non-standard HTTP status code 433 for “no access” errors

User profile page does not indicate that personal details are read-only in User view

Severity:

Minor

Precondition:

A Connecteam account exists.

Steps to Reproduce:
  1. Log in to Connecteam as a regular user (non-admin).
  2. Navigate to the “Profile” section (Switch to “User’s view” → “Profile”).
Environment:

OS: Windows 11
Browser: Chrome 143.0.7499.170, Firefox 146.0.1

Actual Result:

  • The profile fields are displayed as read-only.
  • The “Edit” button is absent.
  • There is no tooltip, hint, or message explaining the lack of editing capability.
  • Users cannot determine whether this is a bug, a missing permission, or an unsupported feature.
Expected Result:

One of the following solutions should be implemented:

  • An explicit message should appear, such as “Profile details can only be edited by an administrator”.
  • There should be a disabled “Edit” button with a tooltip.
  • There should be a link or an action option to “Request profile changes from admin”.
User profile page does not indicate that personal details are read-only in User view
Connecteam provides a strong functional baseline for workforce management workflows. During testing, I found no critical blockers in standard use cases. However, I identified several medium-risk issues affecting data consistency, communication reliability, and the clarity of system rules. Addressing these areas through comprehensive testing will improve user trust, reduce support incidents, and make the product more robust in enterprise environments.
Dmytro, QA engineer

Dmytro, QA engineer

Need a reliable QA partner?

Hire us