How to deploy enterprise licenses on your managed Apple Vision Pro devices
Overview
Innoactive Spatial supports automatic enterprise configuration deployment through Mobile Device Management (MDM) systems. This guide explains how to deploy enterprise licenses to your organization's devices.
Configuration File Formats
Enterprise configurations are provided in one of two file formats:
.innoactiveconfiguration- Current format (recommended).innoactivelicense- Legacy format (still supported)
Both formats contain:
Encrypted license key
Organization details
Feature entitlements
Expiration date
Maximum concurrent users
Deployment Methods
Method 1: Documents Directory Deployment (Recommended for MDM)
This method allows MDM systems to deploy configuration files after app installation.
Location: App's Documents directory
Steps:
Receive your enterprise configuration file from Innoactive (
.innoactiveconfigurationor.innoactivelicense)Configure your MDM to deploy the file to the app's Documents directory
The app will automatically detect and import the configuration on next launch
MDM Configuration Examples:
Jamf Pro
Navigate to Computers > Configuration Profiles (or Mobile Devices for Vision Pro)
Create a new profile or edit existing
Add Custom Settings payload
Upload your configuration file
Set deployment path to app's Documents directory
Assign to target devices
Microsoft Intune
Go to Apps > App configuration policies
Create new policy for managed apps
Add custom configuration
Upload
.innoactiveconfigurationor.innoactivelicensefileTarget deployment to device groups
VMware Workspace ONE
Navigate to Apps & Books > Applications
Select Innoactive Portal
Go to Files/Actions tab
Upload configuration file
Set deployment to Documents directory
Save and push to devices
Method 2: Custom IPA Distribution
This method embeds the configuration file directly in the app bundle during distribution.
Use Case: Pre-configured app packages for enterprise distribution
Steps:
Obtain your configuration file from Innoactive
Add the file to your custom IPA build
Distribute the custom IPA through your MDM
Configuration activates automatically on first launch
Creating a Custom IPA:
# 1. Extract existing IPA
unzip InnoactivePortal.ipa -d portal_app
# 2. Add configuration file
cp YourOrganization.innoactivelicense portal_app/Payload/InnoactiveSpatial.app/
# 3. Re-package IPA
cd portal_app
zip -r ../InnoactivePortal_Enterprise.ipa Payload/
Important: Custom IPAs must be code-signed with your enterprise certificate.
Method 3: Manual Import (For Testing)
Users can manually import configuration files through the app interface.
Steps:
Email configuration file to user or share via AirDrop
User opens Innoactive Portal
Navigate to Settings > Enterprise Configuration
Tap Choose Configuration File or Paste Configuration from Clipboard
Select the configuration file
Configuration activates immediately
Supported Import Methods:
Clipboard: Copy entire JSON configuration or just the license key
File Picker: Select
.innoactiveconfigurationor.innoactivelicensefileAirDrop: Direct transfer from another device
Email Attachments: Open configuration files from Apple Mail
Automatic Detection Behavior
The app searches for configuration files in this priority order:
Documents Directory (checked first)
Searched on every app launch if unlicensed
Allows dynamic MDM deployment
App Bundle (fallback)
Checked if no file found in Documents
For pre-bundled configurations
File Detection:
Any file with
.innoactiveconfigurationextension is detected (newer format preferred)Falls back to
.innoactivelicenseif no.innoactiveconfigurationfoundFilename doesn't matter - extension is the key identifier
Configuration Persistence
Once imported, configurations are stored securely in the device's Keychain:
Secure Storage: Encrypted in iOS/visionOS Keychain
Persists: Across app updates and device restarts
Removal: Only through app settings or device wipe
No Re-import: Once activated, won't re-import on subsequent launches
Verification & Troubleshooting
Verify Successful Deployment
After deployment, verify the configuration is active:
Open Innoactive Portal
Go to Settings > Enterprise Configuration
Check status shows: "Enterprise configuration valid"
Verify organization name and details match
Configuration States
State | Icon | Description |
|---|---|---|
Unlicensed | ⚠️ | No configuration imported |
Licensed | ✅ | Valid configuration active |
Grace Period | ⏰ | Configuration expired, grace period active (30 days) |
Expired | ❌ | Grace period ended, new configuration required |
Over Limit | ⚠️ | More users than license allows |
Common Issues
Configuration Not Detected
Symptoms: App shows as unlicensed after deployment
Solutions:
Verify file extension is
.innoactiveconfigurationor.innoactivelicenseCheck file was deployed to Documents directory, not a subdirectory
Ensure app has been restarted after MDM deployment
Check MDM deployment logs for errors
Verify file is valid JSON (open in text editor)
Check File Location (via device):
Open Files app
Navigate to On My Vision Pro > Innoactive Portal
Configuration file should be visible
Invalid Configuration Error
Symptoms: Import fails with "Invalid configuration format"
Causes:
Corrupted file during transfer
Wrong file type (.license files not supported)
Modified or tampered configuration
Public key mismatch
Solutions:
Re-download configuration file from Innoactive
Ensure file is
.innoactiveconfigurationor.innoactivelicense, not.licenseDon't edit the file contents
Verify file size matches original (should be ~1-2 KB)
Signature Verification Failed
Symptoms: "Configuration signature verification failed"
Cause: File contents were modified or corrupted
Solution: Obtain a fresh configuration file from Innoactive Support
Enable Debug Logging
To troubleshoot deployment issues:
Open Innoactive Portal
Go to Settings > Advanced
Enable Debug Mode
Restart app
Check logs in Settings > Logs
Key Log Entries:
🔑 Checking Documents directory for configuration files...
🔑 Found .innoactiveconfiguration in Documents: YourFile.innoactiveconfiguration
🔑 Successfully decoded as UTF-8
🔑 Public keys match: true
🔑 ✅ Successfully auto-imported enterprise configuration
🔑 License ID: LIC-XXXXXXXX, Organization: YourOrg
Best Practices
For IT Administrators
Test First: Deploy to test device before organization-wide rollout
Name Consistently: Use descriptive filenames (e.g.,
CompanyName_Dept_LIC-ID.innoactiveconfiguration)Track Expiration: Monitor configuration expiry dates
Plan Renewal: Request new configurations 30 days before expiry
Document Process: Keep internal documentation of your deployment method
Backup Files: Store configuration files securely for future deployments
Security Considerations
Configuration files contain signed licenses but no secrets
Files can be safely stored on MDM servers
Public sharing of configuration files should be avoided (enables unauthorized use)
Revoke compromised configurations immediately through Innoactive Support
Capacity Planning
Each configuration specifies maximum concurrent users
Monitor usage in app analytics
Request increased capacity before limits are reached
Over-limit warnings appear 10% before maximum
Configuration File Structure
For reference, configuration files are JSON with this structure:
{
"fileType": "PORTAL_CONFIGURATION",
"version": "1.0",
"licenseKey": "[signed-license-data]",
"metadata": {
"description": "Portal Configuration for [Organization]",
"generatedAt": "2026-02-13T16:36:34Z",
"generatorVersion": "1.0"
},
"payload": {
"licenseId": "LIC-XXXXXXXX-XXXXXXXX",
"licensee": {
"org": "Your Organization",
"department": "Department Name"
},
"maxConcurrent": 50,
"issuedAt": "2026-02-13T16:36:34Z",
"expiresAt": "2027-02-13T16:36:34Z",
"features": ["vred", "collaboration", "object-tracking"]
},
"publicKey": "[public-key-for-verification]"
}
Do not modify any fields in the configuration file - changes will cause signature verification to fail.
Support & Renewals
Request New Configuration
To obtain an enterprise configuration:
Fill out organization details
Specify required features and concurrent users
Submit request
Processing time: Typically 1-2 business days
Renew Existing Configuration
Configurations have expiration dates. To renew:
Contact Innoactive Support 30 days before expiration
Provide current license ID (found in app settings)
Confirm user count requirements
Receive renewed configuration file
Deploy using same method as original
Grace Period: 30-day grace period after expiration allows continued use while renewing
Technical Support
For deployment assistance:
Email: support@innoactive.de
Documentation: https://docs.innoactive.de/portal
Include: License ID, organization name, MDM system, error messages/logs
Appendix: Supported MDM Systems
Innoactive Portal enterprise configuration deployment is compatible with:
Jamf Pro
Microsoft Intune
VMware Workspace ONE
Cisco Meraki Systems Manager
IBM MaaS360
Citrix Endpoint Management
MobileIron (Ivanti)
Any MDM supporting custom file deployment