PSA Migration Guide
How to migrate an Invarosoft instance from one PSA to another using a controlled, client-by-client cutover.
Before you begin
| ☐ | A new email address that has never been registered in Invarosoft |
| ☐ | Master Admin access to both the source and target instances |
| ☐ | API credentials and access required to connect the target instance to the new PSA |
| ☐ | PowerShell 7 installed on the workstation used for the Azure connection |
| ☐ | Authorized Microsoft 365 / Azure credentials for each customer tenancy |
| ☐ | An RMM or deployment tool capable of running an elevated command on client devices |
| ☐ | A client mapping sheet containing each target client and its new activation code |
Step 1: Create the new trial instance
Create the replacement Invarosoft trial using an email address that is not already listed anywhere in the Invarosoft system. This becomes the target instance that will connect to the new PSA.
Complete the new PSA integration and initial client sync before migrating Azure connections. Confirm that every client selected for the first batch exists as the correct client record in the target instance.
Step 2: Recreate content and configuration
Recreate the required content and settings in the target instance before beginning the client cutover. The Invarosoft team will be happy to assist.
| Area | Suggested review |
|---|---|
| Branding | Logos, colors and support contact details |
| Ticket experience | Forms, categories, routing and PSA mappings |
| Client content | News, apps, links and portal resources |
| User experience | Authentication, notifications and available features |
Step 3: Unlink the client’s Azure AD connection
As an Invarosoft Master Admin, open the client you are ready to migrate and remove its existing Azure AD connection.
- Find the client in the list.
- Click the blue Azure AD button.
- Open the Sync tab.
- Click the red Unlink Azure AD button in the bottom-right corner.
- Confirm that the connection has been removed before continuing.
Step 4: Download the new Azure PowerShell script
Open the matching client in the new instance and download its customized PowerShell script.
- If prompted for a connection method, select Direct Tenancy.
- Click the blue Download PowerShell Script button in the top-right corner.
- Save the script in a simple directory that is easy to call, such as
C:\temp.
Step 5: Run the script with PowerShell 7
- Open PowerShell 7 with administrator privileges.
- Run the downloaded script, replacing the example filename with the actual downloaded filename.
pwsh.exe -File "C:\temp\<downloaded-script>.ps1"- If asked to change the execution policy, review and accept the change required for the script to run.
- When prompted, sign in with an authorized account for the customer tenancy. The credentials establish the Azure application and are not stored by the script.
- Allow the script to finish and confirm that it reports no errors.
- If the script returns connection values, copy them into the client’s Azure AD page in the target Invarosoft instance and click Save.
- Open the Sync tab and verify that the tenancy tests successfully.
Review PSA contact creation before enabling it
Invarosoft can create and update PSA contacts from the Azure directory. Review the options under:
- Confirm whether Invarosoft should create missing PSA contacts.
- Review synchronization of first name, last name and email address.
- Run the sync on demand and review User Intervention Records / Pending Decision items for close or duplicate matches.
Step 6: Deactivate and reactivate installed agents
Once a client’s target configuration and Azure connection are ready, use your RMM or deployment tool to run a deactivation job against that client’s installed Invarosoft agents/apps. After confirming the deactivation has completed, activate them against the new client record in the target instance.
1. Deactivate the existing agent
itsp.windows.service.exe deactivate2. Reactivate with the new client code
itsp.windows.service.exe activate <NEW_ACTIVATION_CODE>RMM / batch variable example
itsp.windows.service.exe activate %activation_code%PowerShell variable example
$ActivationCode = "ABCDEFGHIJ"
itsp.windows.service.exe deactivate
itsp.windows.service.exe activate $ActivationCodeThe Invarosoft agent binary directory is registered in the Windows PATH, so these commands can be issued from any working directory.
deactivate and activate commands for an already-installed agent.Final validation checklist
Complete an end-to-end check in the target environment before adding the next client or batch.
| ☐ | The client’s Azure AD page reports a successful connection |
| ☐ | Azure users are linked, created or placed in the correct intervention queue |
| ☐ | Reactivated devices appear under the correct client in the target instance |
| ☐ | A test user can authenticate and open the Invarosoft app |
| ☐ | A test ticket reaches the new PSA with the correct client, contact and routing |
| ☐ | Forms, categories, notifications, apps and links behave as expected |
Troubleshooting
The Azure script does not complete
Confirm you are using PowerShell 7 with administrator privileges, the script was downloaded for the correct target client, and the account has authority to establish the Azure application. Capture the full error before retrying.
Activation returns [ACT-2]
The activation code is invalid. Recopy the 10-character code from the matching target client and confirm the RMM variable resolves correctly.
Activation returns [ACT-3] or [ACT-4]
[ACT-3] indicates that the client user directory is unavailable. [ACT-4] means agent creation failed. Retry once; if the issue persists, log a ticket containing the client name, activation code, agent name and full error.
Users are missing or duplicated after the Azure sync
Review the client’s Azure AD Sync settings and the User Intervention Records / Pending Decision list. Confirm the PSA contact-creation options before running another sync.
Do I need to uninstall the agent?
No. A standard PSA migration only requires deactivation and reactivation. If Invarosoft Support specifically asks you to uninstall, itsp.windows.service.exe remove removes the application while retaining configuration; itsp.windows.service.exe removeclean also wipes the stored configuration.
Need help with the migration?
Invarosoft can assist with content recreation, migration planning and troubleshooting. Include the source instance, target login email, affected clients and planned cutover date.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article