> ## Documentation Index
> Fetch the complete documentation index at: https://docs.msportal.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Configure Syncro Integration

> Connect your Syncro instance to MSPortal.ai using the step-by-step setup wizard

This guide walks you through connecting your Syncro instance to MSPortal.ai using our streamlined setup wizard.

## Prerequisites

* Active Syncro account with administrative access
* MSPortal.ai account with integration management permissions

## Part 1: Configure Syncro

Before connecting to MSPortal.ai, you need to create an API token in Syncro with specific permissions.

### Create API Token

<Steps>
  <Step title="Access Syncro Administration">
    Log into your Syncro account and access the administration portal.
  </Step>

  <Step title="Navigate to API Tokens">
    Scroll to the bottom of the administration portal to locate the **API Tokens** section.
  </Step>

  <Step title="Create New Token">
    Click **New Token** to begin creating your API token.
  </Step>

  <Step title="Configure Token Settings">
    1. **Name**: Enter a descriptive name (e.g., "MSPortal Integration")
    2. **Expiration**: Set the expiration date to at least one year in the future
    3. **Permissions**: Select **Custom Permissions** and enable all permissions listed below

    <Warning>
      Save your API token immediately after creation. You cannot retrieve it again once you leave this page.
    </Warning>
  </Step>
</Steps>

### Required Permissions

Select the following permissions for the API token:

<AccordionGroup>
  <Accordion title="Asset Management">
    * Assets - View Details
    * Assets - List/Search
    * Assets - Edit
    * Assets - Create
  </Accordion>

  <Accordion title="Customer Management">
    * Customers - List/Search
    * Customers - View Detail
    * Customers - View Total Invoiced
    * Contacts - Import
  </Accordion>

  <Accordion title="Tickets & Support">
    * Tickets - List/Search
    * Tickets - View Details
    * Tickets - View 'Their Ticket' Details (assigned to them)
    * Tickets - Create
    * Tickets - Edit
    * Tickets - Use Ticket Charges
    * Ticket Comments - New
    * Ticket Canned Responses - Manage
    * Ticket Custom Fields - Manage
    * Ticket SLA - Edit
    * Ticket Worksheets - Manage
    * Ticket Timers - Overview
  </Accordion>

  <Accordion title="Financial">
    * Invoices - List/Search
    * Invoices - View Details
    * Estimates - List/Search
    * Estimates - View Details
    * Estimates - Create
    * Estimates - Edit
    * Payments - View List
    * Recurring Invoices - List
  </Accordion>

  <Accordion title="Other Operations">
    * Appointments - View All (see-own never restricted)
    * Contracts - List/Search
    * Products - List/Search
    * Pending Orders - View All
    * Vendors - List
    * Warranties - List
    * Warranties - View Details
    * Documentation - Allow Usage
    * Timelogs - Manage
    * RMM Alerts - List
  </Accordion>
</AccordionGroup>

***

## Part 2: MSPortal Setup Wizard

MSPortal.ai provides a guided setup wizard that walks you through connecting and configuring your Syncro integration in 4 easy steps.

### Starting the Wizard

<Steps>
  <Step title="Navigate to Integrations">
    In MSPortal.ai, go to **Settings** > **Integrations**.
  </Step>

  <Step title="Start Setup">
    Find the **Syncro** integration card and click **Configure** to launch the setup wizard.
  </Step>
</Steps>

***

### Step 1: Connect

Enter your Syncro API credentials to establish the connection.

<Steps>
  <Step title="Enter API Credentials">
    Fill in the following fields:

    | Field                | Description                                            | Example          |
    | -------------------- | ------------------------------------------------------ | ---------------- |
    | **Syncro Subdomain** | Your Syncro subdomain (from yourcompany.syncromsp.com) | `yourcompany`    |
    | **API Key**          | The API token you created in Syncro                    | `your-api-token` |

    <Note>
      Enter only the subdomain portion. For example, if your Syncro URL is `acme.syncromsp.com`, enter just `acme`.
    </Note>
  </Step>

  <Step title="Test Connection">
    Click **Test Connection** to verify your credentials. You'll see a green "Connected" status when successful.

    If the connection fails:

    * Verify your subdomain is correct (just the subdomain, not the full URL)
    * Check that your API key is copied correctly
    * Ensure the API token has all required permissions
    * Verify the API token hasn't expired
  </Step>

  <Step title="Proceed">
    Once connected, click **Next** to continue to sync configuration.
  </Step>
</Steps>

***

### Step 2: Sync

Configure what data to sync from Syncro and set up automatic contact import.

<Steps>
  <Step title="Configure Data Sync Options">
    Enable or disable the following sync options:

    | Option                 | Description                        |
    | ---------------------- | ---------------------------------- |
    | **Sync Users**         | Sync user/contact data from Syncro |
    | **Sync Companies**     | Sync customer data from Syncro     |
    | **Enable Ticket Sync** | Sync tickets from Syncro           |

    <Note>
      Syncro does not support opportunity sync. Use the Planner module in MSPortal to manage sales opportunities separately.
    </Note>
  </Step>

  <Step title="Configure Contact Auto-Import">
    If you want contacts to be automatically imported when companies are added:

    1. Enable **Auto-Import** to automatically create user accounts for active contacts
    2. Select a **Default Role for Imported Contacts** (e.g., Viewer)

    <Tip>
      All auto-imported contacts will be assigned the selected role. You can change individual user roles later in Settings > Users.
    </Tip>
  </Step>

  <Step title="Configure Ticket Sync Scope">
    Define which tickets to sync:

    | Setting              | Description                                                          |
    | -------------------- | -------------------------------------------------------------------- |
    | **Exclude Statuses** | Select ticket statuses to exclude from sync (e.g., Closed, Resolved) |

    <Info>
      When you proceed to the next step, data sync will begin in the background. This may take a few minutes depending on the amount of data in your Syncro account.

      Syncs are automatically deduplicated - if you navigate back and forth between steps, the same sync will not run multiple times within a 2-minute window.
    </Info>
  </Step>

  <Step title="Proceed">
    Click **Next** to continue to ticket configuration.
  </Step>
</Steps>

***

### Step 3: Configure

Set up ticket status mapping.

#### Ticket Settings

<Steps>
  <Step title="Configure Status Settings">
    | Setting                   | Description                                      |
    | ------------------------- | ------------------------------------------------ |
    | **Closed Statuses**       | Select statuses that indicate a ticket is closed |
    | **Client Comment Status** | Status to set when a client comments on a ticket |
  </Step>

  <Step title="Configure Resolution Status Stepper">
    The Resolution Status Stepper provides a visual indicator of ticket progress. Map your Syncro statuses to each stage:

    | Stage        | Description                                             |
    | ------------ | ------------------------------------------------------- |
    | **New**      | Tickets that are newly created or not yet triaged       |
    | **Triaged**  | Tickets that have been reviewed and categorized         |
    | **Working**  | Tickets actively being worked on                        |
    | **Waiting**  | Tickets waiting for customer response or external input |
    | **Resolved** | Tickets that have been completed                        |

    <Tip>
      You can map multiple Syncro statuses to each stage. The stepper will show the appropriate stage based on the ticket's current status.
    </Tip>
  </Step>

  <Step title="Sync Actions">
    Use these buttons to manage ticket sync:

    | Action             | Description                                                                                   |
    | ------------------ | --------------------------------------------------------------------------------------------- |
    | **Quick Sync**     | Trigger an immediate sync of ticket data                                                      |
    | **Clear & Resync** | Delete all synced tickets and perform a fresh sync (useful after major configuration changes) |
  </Step>

  <Step title="Proceed">
    Click **Next** to continue to the import step.
  </Step>
</Steps>

***

### Step 4: Import (Optional)

Import users and companies from Syncro. This step is optional - you can skip it and import later from the respective settings pages.

<Tabs>
  <Tab title="Import Users">
    Import users from Syncro to create user accounts.

    1. Enable **Import Users Now**
    2. Select users from the list to create accounts for
    3. Choose a default role for imported users

    <Note>
      Client contacts are not imported here. They can be managed via Company settings after companies are imported.
    </Note>
  </Tab>

  <Tab title="Import Companies">
    Import customers from Syncro to sync their data.

    1. Enable **Import Companies Now**
    2. Select companies to import or link to existing MSPortal companies

    <Tip>
      Companies will sync automatically based on your sync settings. Use this option if you want to import specific companies immediately.
    </Tip>
  </Tab>
</Tabs>

***

### Complete Setup

Click **Complete Setup** to finish the wizard. Your Syncro integration is now configured!

<Note>
  You can return to the setup wizard at any time by clicking **Configure** on the Syncro integration card. The wizard will resume with your current settings.
</Note>

***

## Managing Your Integration

After setup, you can manage your integration from **Settings** > **Integrations**:

* **Configure**: Re-open the setup wizard to modify settings
* **Resync**: Trigger a manual sync of data
* **Sync PSA Data**: Refresh configuration data from Syncro
* **Import Devices**: Import devices/assets from Syncro. The device import page lets you map Syncro asset types to MSPortal device types, enable auto-sync, and ignore categories you don't need. See [Import Devices](/user-guides/integrations/import-devices) for the full guide.

***

## Synchronization Process

### Initial Sync

* Customer data will begin synchronizing within approximately 1 minute
* Tickets and users will sync alongside customer data
* Devices and additional settings will sync after customers have been imported

### Manual Sync

To force an immediate synchronization of specific data types, use the refresh button in the integration settings.

***

## Important Notes

* **Token Security**: Store your API token securely. If compromised, immediately revoke it in Syncro and generate a new one
* **Sync Timing**: Initial synchronization may take several minutes depending on data volume
* **Dependencies**: Devices and certain settings require customer data to be imported first
* **No Opportunities**: Syncro does not support opportunities. Use MSPortal's Planner module for sales tracking

***

## Troubleshooting

| Issue                  | Solution                                                                      |
| ---------------------- | ----------------------------------------------------------------------------- |
| Connection test fails  | Verify your subdomain (no full URL) and API key are correct                   |
| Token expired          | Generate a new token in Syncro and update the integration                     |
| Permissions error      | Ensure all required permissions are enabled on the API token                  |
| Tickets not syncing    | Check that ticket statuses aren't excluded in sync settings                   |
| Contacts not importing | Verify Auto-Import is enabled and a default role is selected in the Sync step |
| Devices not appearing  | Ensure customers have been imported first, then trigger device import         |
