Deploy Senso Client on macOS with MDM
Last updated: 10th October 2025
Overview
This guide is for IT administrators deploying the macOS Senso Client with Jamf Pro, Microsoft Intune, or Jamf School. It covers how to get the installer, how to push the licence, and how to assign the PKG.
Jamf Pro and Intune: Put the licence and the PKG in one policy (or one Intune app).
Jamf School only: The script must deploy first, then assign the PKG. Do not scope Scripts and the Package together on the first push.
Replace
YOUR_LICENSE_KEY/YOUR_SITE_ID(orxx-xx-xx/xxin the Jamf Pro script) with values from the Senso portal.
1. Get the installer
Download the Mac package from Senso Admin Centre → Downloads. That page lists Windows Client and MacOS Client.
MacOS Client has two downloads: Intel and ARM. Each download is a ZIP file. Unzip it to access the PKG and other supplemental installation files.
Files included in the ZIP
The following files are included in the ARM example.
| File | Role |
|---|---|
mdm_license_script.txt | Script contents used to push the licence key out using MDM |
README.md | Installation guide |
SensoClient_Installer_ARM.pkg | Installs the SensoClient app (ARM) |
SHA256SUMS.txt | File integrity verification |
Verify file integrity (optional)
After unzipping, you can confirm that the files are not corrupted. Run the following command from the unzipped location:
shasum -a 256 -c SHA256SUMS.txt2. Supported macOS and architecture
Supported macOS versions
Officially supported and tested macOS:
v14 Sonoma
v15 Sequoia
v26 Tahoe
v27 Golden Gate (latest as of October 2026)
The source document also includes a graphic stating:
v14 Sonoma
v15 Sequoia and above
The Senso Client also runs on MacBook Neo (2026 hardware). Use the ARM download.
Identify the Mac's architecture
To check which chipset architecture your Mac is running, execute this command in Terminal:
uname -mThe output identifies the chipset. Example: arm64 — choose ARM.
3. Which MDM pattern to use
| MDM | Pattern |
|---|---|
| Jamf Pro | Licence script and PKG in one policy (same payload). |
| Intune | One macOS app (PKG) with the licence in the pre-install script. |
| Jamf School | Script runs first, then the vendor PKG. Sequential ordering is critical. |
4. Deploy with Jamf Pro
Pushing the licence script via MDM allows the client to run without prompting for the licence dialog. The script creates a licence file on the client, which the Mac Client reads at startup.
4.1 Check-in settings
Go to Settings → Computer Management → Check-in.
Set Frequency according to your environment needs.
Enable:
Startup Script
Login Script
Log Computer and Check for Policies
4.2 Add the licence script
Go to Settings → Scripts.
Click Add Script.
Paste the licence activation script below. It is also provided as
mdm_license_script.txtin the Downloads ZIP.Replace
LICENSE_KEYandSITE_IDwith your own values found in the Senso portal.
#!/bin/bash
# --- Configuration Variables --- LICENSE_KEY="xx-xx-xx" # --- Your license and can be found in your portal --- SITE_ID="xx" # --- Your site and can be found in your portal ---
# Config directory and file CONFIG_DIR="/Library/Application Support/SensoMDMLicense/Configuration" CONFIG_FILE="$CONFIG_DIR/AssignmentConfiguration.json"
# --- Create directories --- mkdir -p "$CONFIG_DIR"
# --- Write JSON config file --- cat <<EOF > "$CONFIG_FILE" {"licenseKey":"$LICENSE_KEY","siteId":"$SITE_ID"} EOF
chmod -R 777 "$CONFIG_DIR"
BASE_DIR="/Library/Application Support/SensoClient" if [ -d "$BASE_DIR" ]; then find "$BASE_DIR" -type d -exec chmod 777 {} \; find "$BASE_DIR" -type f -exec chmod 666 {} \; fi
echo "SensoClient license applied for site '$SITE_ID'."4.3 Upload the ARM or Intel package
In Jamf Pro, go to Settings → Computer Management → Packages.
Upload the correct PKG based on the device chipset architecture:
ARM (Apple Silicon)
Intel
4.4 Create the combined policy
Go to Computers → Content Management → Policies.
Click New.
Under General, give the policy a clear name.
Set Trigger: Startup (or any other trigger based on your requirements).
Set Frequency: once per computer unless you need to update.
Under Scripts, select the script created earlier.
Under Packages, add the uploaded PKG.
Go to Scope, choose the devices or group of devices, and click Save.
5. Deploy with Intune
The licence JSON is written in the pre-install script so it is on disk before the client first runs. The PKG then installs as the same app object.
5.1 Create the macOS app PKG
Sign in to https://intune.microsoft.com.
Go to Apps → All apps → Create.
Select app type: Platform macOS → macOS app (PKG) → Select. Do not select Line-of-business app.
Under App information, select Select app package file, browse to the unzipped
.pkg, and click OK.Enter the name (example:
SensoClient_Installer_ARM.pkg), description and Publisher (example:Renato), then click Next.
5.2 Program tab: pre-install and post-install
Select Next → Program to open the second wizard tab. Later, this can be accessed through Properties → Program.
Pre-install script
Replace LICENSE_KEY and SITE_ID with your own values found in the Senso portal.
#!/bin/bash
# --- Rename this text file to .sh and make it execute to upload this to your MDM --- # --- Edit the Configuration Variables below with your license key and site id --- # --- Leave the environment untouched if you are using LIVE ---
# --- Configuration Variables --- LICENSE_KEY="YOUR_LICENSE_KEY" # --- Your license and can be found in your portal --- SITE_ID="YOUR_SITE_ID" # --- Your site and can be found in your portal ---
# Config directory and file CONFIG_DIR="/Library/Application Support/SensoMDMLicense/Configuration" CONFIG_FILE="$CONFIG_DIR/AssignmentConfiguration.json"
# --- Create directories --- mkdir -p "$CONFIG_DIR"
# --- Write JSON config file --- cat <<EOF > "$CONFIG_FILE" {"licenseKey":"$LICENSE_KEY","siteId":"$SITE_ID"} EOF
chmod -R 777 "$CONFIG_DIR"
BASE_DIR="/Library/Application Support/SensoClient" if [ -d "$BASE_DIR" ]; then find "$BASE_DIR" -type d -exec chmod 777 {} \; find "$BASE_DIR" -type f -exec chmod 666 {} \; fi
exit 0Important: The pre-install script must exit 0, or Intune will not install the PKG. It will retry at the next check-in.
Post-install script
No extra work is required. Use:
#!/bin/bash exit 05.3 Requirements, detection and assignment
Requirements: Minimum operating system = macOS Sonoma 14.0.
Detection rules: Ignore app version = Yes. Included apps:
com.renatosoftware.sensoclient2604.08.6(bundle ID plus version).Assignments: Required. Include one group (example: MAC Group, Status Active). Available for enrolled devices. One assignment on this app. Do not also assign a Shell script.
Select Review + create → Create.
6. Deploy with Jamf School
Jamf School only: Push the licence script first, then deploy the vendor PKG. Do not assign the script and the package at the same time. Deployment must be sequential.
If Scripts is missing, navigate to Organization → Settings → Add Modules and install the scripting module (Jamf School Scripting on Macs, macOS 10.13.6+).
6.1 Push the licence script
Go to Scripts in the sidebar and select + Create new script.
Name it (example:
SensoClient license). Set When to run: Just Once and use UNIX line endings.Paste the script below. Replace
YOUR_LICENSE_KEYandYOUR_SITE_IDwith values from your Senso portal.
#!/bin/bash
# --- Rename this text file to .sh and make it execute to upload this to your MDM --- # --- Edit the Configuration Variables below with your license key and site id ---
LICENSE_KEY="YOUR_LICENSE_KEY" SITE_ID="YOUR_SITE_ID"
CONFIG_DIR="/Library/Application Support/SensoMDMLicense/Configuration" CONFIG_FILE="$CONFIG_DIR/AssignmentConfiguration.json"
mkdir -p "$CONFIG_DIR"
cat <<EOF > "$CONFIG_FILE" {"licenseKey":"$LICENSE_KEY","siteId":"$SITE_ID"} EOF
chmod -R 777 "$CONFIG_DIR" exit 0Select + to add one device group. Do not add a package yet.
Save.
Wait for check-in, or go to Devices → Inventory → select the Mac → Refresh.
6.2 Verify the JSON on the Mac
On the Mac, before deploying any Senso PKG, run:
test -f "/Library/Application Support/SensoMDMLicense/Configuration/AssignmentConfiguration.json" && cat "/Library/Application Support/SensoMDMLicense/Configuration/AssignmentConfiguration.json"You should see licenseKey and siteId.
If the file is missing, do not deploy the PKG. Check Scripts run status; remove and re-add the script scope if a one-time script needs to run again.
6.3 Deploy the PKG
Go to Senso Admin Centre → Downloads → MacOS Client Intel or ARM (MacBook Neo = ARM), then unzip the download. Use the vendor
.pkg(ARM example:SensoClient_Installer_ARM.pkg).Go to Apps → Inventory → + Add App → Add In-House macOS Package.
Upload the vendor
.pkg(not the ZIP, not a wrapper).On the package record, select + and assign the same device group as the script, only now. Turn on Automatic Installation.
Save.
7. Confirming the installation
Once the above MDM operations have been carried out, the target devices should have the following folder:
/Library/Application Support/SensoClient/SensoClient.appAfter a user logs in, there will be a Senso.Cloud menu bar icon. Clicking this will display a status. It should show:
License: Connected
This indicates that everything is working as expected according to the source guide.