---
title: HaloPSA Integration Guide
description: A step-by-step guide to getting HaloPSA connected
---

[Skip to content](https://kb.mspcentric.io/sonicwall/halopsa-integration-guide#main-content)

English

Show submenu for translations

[Customer portal](https://support.mspcentric.io/tickets-view?hsLang=en)

![sonicwall.jpg\]](https://kb.mspcentric.io/hs-fs/hubfs/sonicwall.jpg?height=36&name=sonicwall.jpg)

Open main navigation

Close main navigation

- English
  
  Show submenu for translations
- [Customer portal](https://support.mspcentric.io/tickets-view)
- Go to MySonicWall.com

 Go to MySonicWall.com

 PSA Integration Documentation

- There are no suggestions because the search field is empty.

1. [SonicWall PSA Integration KB](https://kb.mspcentric.io/sonicwall?hsLang=en)
2. [Getting started](https://kb.mspcentric.io/sonicwall/getting-started?hsLang=en)
3. [Connecting Your PSA](https://kb.mspcentric.io/sonicwall/getting-started?hsLang=en#connecting-your-psa)

# HaloPSA Integration Guide

## A step-by-step guide to getting HaloPSA connected

Here are the minimum requirements for on-premise environments.

1. Fully Chained SSL Certificate.
2. The latest stable version of HaloPSA.
3. If your Halo instance restricts access based on IP, our IPs are 3.19.3.152 &  3.19.4.238

**Note:** On-premise users can populate the **Tenant** field by typing in the words **Not set**.

### **Setup**

We will cover how to completely set up a Role, Agent, and application with all the permissions needed for billing and for alerts. We will outline below Alert specific permissions.

 

### **Create Role**

**Roles** can be accessed by navigating to **Configurations \> Teams and Agents \> Roles**. You can create a new **Role** called whatever you wish, for example MSPCentric.

Press save.

Go to the permissions tab, and give the following permissions:

1. Clients Access Level - Read Only
2. Items Access Level - Read and Modify
3. Invoices Access Level - Read, Create and Modify
4. Client Contracts Access Level - Read and Modify
5. Tickets Access Level - Read and Modify

Navigate down the permissions tab to Ticket Permissions:

1. Can add new tickets - yes
2. Can edit closed tickets - yes
3. Can edit tickets which are not assigned to them - yes

Navigate down to Ticket Type Restrictions:

1. Allow the user of all Ticket Types - yes

Navigate to Client Restrictions:

1. Allow use of all Clients - yes

Save this role, then proceed to creating a new Agent.

 

---

### **Configurate Agent**

Navigate back to the **Configurations** page. Now go to **Teams & Agents \> Agents.**

On this page, we will create a new Agent. Press the New button in the top right.

 

![a1](https://kb.mspcentric.io/hs-fs/hubfs/a1.webp?width=402&height=105&name=a1.webp)

Use the following settings for the Agent:

1. Username will be 'MSPCentric'
2. Select MSPCentric under Roles
3. Select the API-only agent option
4. Default Team can be 'No Default Team'
5. Work hours will be 'Default Working Hours'

On the permissions tab, make sure that **Can Create Asset Fields** is set to **Yes**. Additionally, in the **Asset Field Restrictions** section make sure that **Allow use of all Asset Fields** is set to **Yes**.

![11](https://kb.mspcentric.io/hs-fs/hubfs/11.png?width=529&height=352&name=11.png)

Scroll to the bottom and hit save.

### **Create New Application**

Navigate to **Configuration** \> **Integrations** \> **HaloPSA API** \> **View Applications.**

 

![a2](https://kb.mspcentric.io/hs-fs/hubfs/a2.webp?width=670&height=451&name=a2.webp)

Click **New** in the top right.

On the **Details** tab, enter "Application Name" with MSPCentric.

Set the "Authentication Method" to **Client ID and Secret (Services).**

Copy the Client ID and Client Secret into Gradient.

Set the **Login Type** to **Agent**.

 

![a3](https://kb.mspcentric.io/hs-fs/hubfs/a3.webp?width=670&height=410&name=a3.webp)

 

Select an **Agent to log in as**. This will be "Gradient" as we created the Agent in the earlier step.

Press **Save. Press OK if you get a permissions pop-up.**

On the **Permissions** tab, enable the following permissions:

1. read:customers
2. read:contracts
3. edit:contracts
4. read:items
5. edit:items
6. read:invoices
7. edit:invoices
8. read:tickets
9. edit:tickets

Click **Save**.

Ensure that you save your clientId and clientSecret, and store securely.

**Warning:** Authorization Server requires a forward slash "/" at the end of the URL **https://domain.halopsa.com/auth/**

Congratulations, you've successfully connected your PSA!

---

### Alert Specific Permissions

This section will contain Alerts specific permission

 

#### **Role**

In **Roles \> Permissions \>**

- **Feature Access:**
  
    - **Ticket Access Level: ‘**Read and Modify’

 

![a4](https://kb.mspcentric.io/hs-fs/hubfs/a4.webp?width=670&height=363&name=a4.webp)

- Ticket Permissions**:** 
    - **Can add new tickets:**  ‘yes’
    - **Can edit closed tickets: ‘**yes’
    - **Can edit tickets which are not assigned to them: ‘**yes’
    - **Can view tickets that are assigned to other Agents: ‘**yes’
    - **Can edit Advanced Ticket Details: ‘**yes’
    - **Can edit tickets which are not assigned to them**: ‘yes’

 

![a5](https://kb.mspcentric.io/hs-fs/hubfs/a5.webp?width=670&height=847&name=a5.webp)

 

![a6](https://kb.mspcentric.io/hs-fs/hubfs/a6.webp?width=670&height=864&name=a6.webp)

 

- **Ticket Type Restrictions:** 
  
    - **Allow use of all Ticket Types: ‘**yes**’**
- **Client Restrictions:** 
  
    - **Allow the user of all Clients: ‘**yes**’**

 

![a7](https://kb.mspcentric.io/hs-fs/hubfs/a7.webp?width=670&height=693&name=a7.webp)

### **Agent**

The Agent that you are using for the integration MUST be assigned to have visibility of the Team or Teams that they are looking to select in the SonicWall app for Alerts. This can be done by manually selecting a Team or Teams to add on Department & Teams tab of that Agents profile(Configuration \> Teams & Agents \> Agents). 

The easiest way to ensure this is to go to Configuration \>Integrations \> HaloPSA Api \> Application, select the Application that you are using, and set **All:Teams** to **Yes**.

![image (35)](https://kb.mspcentric.io/hs-fs/hubfs/image%20(35).png?width=670&height=289&name=image%20(35).png)

### **Application**

When configuring the application permissions, the alerts-specific permissions required are:

- read:tickets
- edit:tickets
- read:customers

 

![a8](https://kb.mspcentric.io/hs-fs/hubfs/a8.webp?width=670&height=529&name=a8.webp)

 

---

[Top](https://kb.mspcentric.io/sonicwall/halopsa-integration-guide#top)

- [Getting started](https://kb.mspcentric.io/sonicwall/getting-started?hsLang=en#main-content)

    - [Quick Start Guide](https://kb.mspcentric.io/sonicwall/getting-started?hsLang=en#quick-start-guide)
    - [Connecting Your PSA](https://kb.mspcentric.io/sonicwall/getting-started?hsLang=en#connecting-your-psa)
- [Billing Reconciliation](https://kb.mspcentric.io/sonicwall/billing-reconciliation?hsLang=en#main-content)

    - [Reconciling Service Usage to your PSA](https://kb.mspcentric.io/sonicwall/billing-reconciliation?hsLang=en#reconciling-service-usage-to-your-psa)
    - [Settings and Features](https://kb.mspcentric.io/sonicwall/billing-reconciliation?hsLang=en#settings-and-features)
- [Alert to Ticket](https://kb.mspcentric.io/sonicwall/alert-to-ticket?hsLang=en)
- [Troubleshooting Tips](https://kb.mspcentric.io/sonicwall/troubleshooting-tips?hsLang=en)
- [FAQs and Resources](https://kb.mspcentric.io/sonicwall/faqs-and-resources?hsLang=en#main-content)

    - [FAQs](https://kb.mspcentric.io/sonicwall/faqs-and-resources?hsLang=en#faqs)
    - [Troubleshooting](https://kb.mspcentric.io/sonicwall/faqs-and-resources?hsLang=en#troubleshooting)
    - [Resources](https://kb.mspcentric.io/sonicwall/faqs-and-resources?hsLang=en#resources)
    - [PSA Service Bundle Contract Management](https://kb.mspcentric.io/sonicwall/faqs-and-resources?hsLang=en#psa-service-bundle-contract-management)

[![sonicwall](https://kb.mspcentric.io/hs-fs/hubfs/sonicwall.webp?width=165&height=36&name=sonicwall.webp "sonicwall")](https://kb.mspcentric.io/?hsLang=en)

MySonicwall Help Center

Copyright © 2026, MSPCentric