Troubleshooting

Access forbidden, billing errors, ticket charge issues, user linking.

Written By Victor Raessen

Last updated 4 days ago

Running into an issue? This section covers the most common problems and how to resolve them. If you can't find your answer here, reach out to our support team through the chat widget or email support@salesbuildr.com.

Access Forbidden

When you see "Access Forbidden" or are blocked from reaching a page or feature, the cause is one of these:

Your user is not linked to a company

Salesbuildr requires every non-admin user to be linked to a company and verified. If either condition is missing, API requests return "You are not linked to a company or the link is not verified."

Resolution:

  1. Go to Admin > Users & Permissions

  2. Find the affected user

  3. Confirm they have a company assigned

  4. Confirm the link is verified

  5. If the user was synced from a PSA, run a manual sync to ensure their company link is up to date

Your role lacks the required permission

Salesbuildr uses role-based access control. If your account doesn't have the right permission, the request is blocked.

Resolution:

  • Ask your admin to check your role at Admin > Users & Permissions > Roles

  • Admin users bypass all permission checks

  • For non-admin users, the relevant permissions are: Quote editor, Product viewer, Product editor, Products importer, Pricing book editor, Company editor, Whitespace viewer, Procurement editor (see Users & Permissions for details)

Your email is unverified or login is disabled

Salesbuildr checks several conditions at login:

ConditionError codeWhat it means

User was deleted

USER_DELETED

The user account was soft-deleted. An admin needs to restore it

Email not verified

EMAIL_UNVERIFIED

The email address hasn't been verified. Sign in with Google or Microsoft to auto-verify, or follow the verification link sent to your email

Company not verified

COMPANY_UNVERIFIED

The user's company link hasn't been verified. Admin needs to verify

Login disabled

LOGIN_DISABLED

Login has been turned off for this account

Auth provider invalid

AUTH_PROVIDER_INVALID

You're trying to log in with a provider (Google/Microsoft/password) that your admin has disabled

Resolution:

  • Log out and log back in to refresh your session

  • Try a different login method (Google, Microsoft, or password) if one is blocked

  • Contact your admin to check your account status

MSP domain restriction

If your admin has configured MSP domains (under Admin > Platform > Authentication), users with matching email domains must be explicitly invited before they can log in.

BillingCode does not exist or is invalid (Autotask)

This error occurs when a product is synced to Autotask but the assigned billing code is missing or has been deleted in Autotask.

How billing codes work

Salesbuildr maps billing codes to product categories. When a product is synced to Autotask, Salesbuildr assigns the billing code configured for that product's category.

Resolution

  1. Navigate to Admin > Integrations > Autotask > Billing Codes

  2. Check that the billing code assigned to the product's category still exists in Autotask

  3. If the billing code was deleted or renamed in Autotask, run Admin > Integrations > Autotask > Synchronize to refresh the billing code list

  4. Re-assign a valid billing code to the affected category

  5. Retry the product sync

Billing codes are also used for ticket charges and purchase orders. If the error appears during a ticket charge or procurement flow, check the billing code configured at Admin > Integrations > Autotask > Purchase Order.

No matching records found (Autotask)

This error typically appears during Autotask synchronization when Salesbuildr queries the Autotask API for a specific entity (product, company, contact, or opportunity) and Autotask returns no results.

Common causes

  • The entity was deleted in Autotask but its reference still exists in Salesbuildr

  • The Autotask API user doesn't have visibility to the entity (security level restrictions)

  • An external identifier stored in Salesbuildr no longer matches any Autotask entity

Resolution

  1. Check whether the entity still exists in Autotask

  2. If it was deleted, dismiss the sync issue at Admin > Tools > Issues

  3. If it should exist, verify your Autotask API user's security level allows access to the entity type

  4. Run a full sync to re-index the mapping between Salesbuildr and Autotask

Ticket charges are cancelled (Autotask)

Ticket charges synced from Autotask can have one of several statuses. When charges show as "cancelled," this reflects the status set in Autotask — Salesbuildr mirrors the Autotask status, it does not change it.

Ticket charge statuses

Autotask ticket charges have these possible statuses:

  • New — charge was just created

  • Waiting Approval — charge needs manager approval in Autotask

  • Approved/Posted — charge was approved and posted

  • Rejected — charge was rejected by an approver

  • Cancelled — charge was cancelled

  • Waiting Customer — pending customer action

  • Billed — charge has been invoiced

Resolution

  1. Open the affected ticket charge in Autotask directly and check its status and history

  2. If the charge was cancelled in error, recreate it in Autotask — it will sync back to Salesbuildr

  3. If charges are being imported as cancelled automatically, check:

    • Admin > Integrations > Autotask > Purchase Order — the Import new ticket charges toggle controls whether new ticket charges from Autotask are imported into Salesbuildr procurement

    • The import only pulls charges created within the last 2 hours

    • Products marked as "Does not require procurement" are skipped during import

Preventing unwanted charge imports

If you're seeing unexpected ticket charges in your procurement queue, verify:

  • The product's "Does not require procurement" flag in Admin > Products

  • The billing code mapping for the product's category

User is not automatically linked

When a PSA sync runs, Salesbuildr attempts to match PSA users/contacts to Salesbuildr users by email address. If matching fails, the user exists in both systems but is not linked.

How user linking works

For ConnectWise:

  1. Salesbuildr fetches all active ConnectWise members

  2. For each member, it checks if a Salesbuildr user exists with a matching ConnectWise external identifier

  3. If no match by identifier, it tries matching by email address

  4. If still no match, a new Salesbuildr user is created with the ConnectWise member's details

  5. Only members with Regular Member or Subcontractor license class are synced — other license types are skipped

For Autotask:

  • Resources are matched by the Autotask external identifier on the Salesbuildr user record

  • If no external identifier match, the system falls back to email matching

For HaloPSA:

  • Users are matched using the HaloPSA external identifier

  • If no match exists, email-based matching is attempted

Resolution

  1. Check that the PSA user's email address exactly matches the Salesbuildr user's email (case-insensitive, trimmed)

  2. If emails don't match (e.g., the user has a different email in the PSA), manually link the user:

    • Navigate to Admin > Users & Permissions

    • Edit the user and ensure the correct email is set

    • Run a sync to re-attempt the match

  3. For ConnectWise: verify the user has a Regular Member or Subcontractor license — other license types are intentionally excluded

  4. If a user is linked to the wrong PSA contact, check the external identifiers on the user record — a sync may have created a duplicate instead of matching the existing record

  5. After fixing the email or identifier, run Admin > Integrations > [PSA] > Synchronize to trigger a re-sync

Company verification

After a user is linked to a company, the company link must be verified for the user to access company-specific features. This happens automatically during PSA sync for MSP users. For customer contacts, an admin may need to verify manually.

General troubleshooting steps

If none of the above issues match your situation:

  1. Check sync issues — go to Admin > Tools > Issues for a list of recent failures with error messages. Use Retry or Retry All to re-attempt failed operations

  2. Re-index — go to Admin > Tools > Maintenance > Re-index and re-index the affected entity type (products, opportunities, quotes, users, etc.)

  3. Review activity logs — go to Admin > Tools > Logs to see recent changes and identify what may have caused the issue

  4. Clear browser cache — for display or loading issues, clear your browser cache and reload

  5. Check API credentials — for integration errors, verify your PSA/distributor API credentials haven't expired. See PSA Configuration for sync and credential settings

  6. Report an incident — if the issue persists, check Platform Incidents for known outages or report a new issue

See also