Helpdesk migration
Field-level mapping, validation, and rollback between Halo Service Desk and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.
Halo Service Desk
Source
Salesforce Service Cloud
Destination
Compatibility
8 of 11
objects map 1:1 between Halo Service Desk and Salesforce Service Cloud.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from Halo Service Desk to Salesforce Service Cloud requires reconciling two fundamentally different data models. Halo separates Customers and Companies as distinct record types; Salesforce nests Contacts within Accounts. We resolve this schema gap during scoping by creating Account records from Halo Companies and linking migrated Contact records to them, preserving any site-level address data as Account Address fields. Halo Tickets map directly to Salesforce Cases, with ticket type becoming Case Record Type and ticket status mapping to Case Status. SLA policies require translation into Salesforce Entitlements and entitlement processes, which we configure before migration so that SLA clocks resume correctly post-go-live. Conversation threads migrate as EmailMessage records linked to the parent Case. We do not migrate Halo workflows, approval chains, or automation rules as code; we deliver a written inventory of every active automation for the customer's Salesforce admin to rebuild in Flow. Password custom fields are not migrated due to Halo's encryption-at-rest protection.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Source platform
Halo Service Desk platform overview
Scorecard, SWOT, gotchas, and pricing for Halo Service Desk.
Destination platform
Salesforce Service Cloud platform overview
Scorecard, SWOT, gotchas, and pricing for Salesforce Service Cloud.
Data migration guide
The complete Salesforce Service Cloud migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Salesforce Service Cloud migration checklist
Pre- and post-cutover tasks for moving onto Salesforce Service Cloud.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Halo Service Desk object lands in Salesforce Service Cloud, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Halo Service Desk
Ticket
Salesforce Service Cloud
Case
1:1Halo Tickets map directly to Salesforce Cases. The Halo ticket type becomes Case Record Type, ticket status maps to Case Status picklist values that we configure during schema setup, and priority transfers to Case Priority. We resolve the linked Customer record to a Salesforce Contact and the linked Company to an Account at migration time so that AccountId and ContactId are populated on every Case. SLA associations migrate as Entitlement references we create in Salesforce before Case import begins.
Halo Service Desk
Customer
Salesforce Service Cloud
Contact
1:manyHalo Customers are standalone contact records without an inherent Account relationship. Salesforce requires Contacts to belong to an Account. We map each Halo Customer to a Salesforce Contact linked to the Account created from the associated Halo Company. If a Halo Customer has no linked Company, we create a standalone Account for that Customer to satisfy the Contact-Account relationship requirement. The Halo customer email becomes the Contact Email, and phone data maps to Contact Phone.
Halo Service Desk
Company
Salesforce Service Cloud
Account
1:1Halo Companies map directly to Salesforce Accounts. The Account Name derives from the Halo Company name, and the billing or site address maps to the Account Address fields. Halo's site-specific information (site name, site type, location) migrates as custom fields on the Account record. Account is created before any Contact import so that the AccountId lookup relationship is satisfied at the moment of Contact insert.
Halo Service Desk
Agent
Salesforce Service Cloud
User
1:1Halo Agents map to Salesforce User records. We match Agents by email address to Salesforce Users. Agents without a matching Salesforce User go to a reconciliation queue for the customer's admin to provision before Case import begins, because Case.OwnerId requires a valid User or Queue reference. Team and role assignments from Halo migrate as Salesforce Role (hierarchy) and Profile (permissions) mappings defined during schema design.
Halo Service Desk
Team
Salesforce Service Cloud
Queue
1:1Halo Teams migrate to Salesforce Queues for case routing. Each Halo team becomes a Queue object (Case.Queue) in Salesforce. We map the Agent-to-Team assignments from Halo to QueueMembership records so that Case routing by Queue functions immediately post-migration. Queue routing rules in Salesforce Omni-Channel are not migrated and must be configured by the customer's admin post-migration.
Halo Service Desk
SLA Policy
Salesforce Service Cloud
Entitlement + Entitlement Process
lossyHalo SLA Policies define response and resolution timeframes tied to Ticket types and priorities. We translate these into Salesforce Entitlements (the policy itself) and Entitlement Processes (the milestone triggers). The business-hour calendar from Halo maps to the Salesforce Business Hours field on Entitlement. Entitlements are created before Case migration so that the EntitlementId field can be populated on each imported Case, resuming SLA clock tracking at go-live.
Halo Service Desk
Knowledge Base Article
Salesforce Service Cloud
Knowledge Article
1:1Halo KB articles with title, body content, and category assignments map to Salesforce Knowledge articles. We migrate article content with category hierarchy preserved as Salesforce Data Category Group assignments. Publish status from Halo maps to KnowledgeArticle.ArticleStatus (Draft, Published, Archived). Article attachments migrate as ContentDocument records linked to the article via ContentDocumentLink.
Halo Service Desk
Conversation
Salesforce Service Cloud
EmailMessage + Case Comment
1:1Halo Ticket conversations include both internal notes and customer-facing replies, distinguished by an is_public flag. We migrate customer-facing threads as Salesforce EmailMessage records linked to the Case; internal notes migrate as CaseComment records with IsPublished=false. Author attribution maps from the Halo Agent or Customer to the Salesforce CreatedById lookup. Timestamps are preserved as EmailMessage.IncomingDate and EmailMessage.MessageDate respectively.
Halo Service Desk
Attachment
Salesforce Service Cloud
ContentDocument
1:1File attachments on Halo Tickets and KB articles migrate as Salesforce ContentDocument records. We link each ContentDocument to the parent Case or KnowledgeArticle via ContentDocumentLink. Large attachment volumes can slow migration runs materially; we flag attachment-heavy accounts (over 1,000 attachments) during scoping so the customer can decide whether to migrate file history or reset attachment storage post-go-live.
Halo Service Desk
Asset
Salesforce Service Cloud
Asset
1:1Halo Assets linked to Customers and Sites migrate to Salesforce Asset records. The asset type, serial number, and linked software or license data transfer as typed fields on Asset. We resolve the Halo Customer reference to a Salesforce ContactId and the Halo Site reference to an AccountId on Asset during migration. Asset-to-Ticket relationships (which tickets reference which assets) migrate as CaseAssetRelation records or custom lookup fields defined during schema design.
Halo Service Desk
Custom Field (non-password)
Salesforce Service Cloud
Custom Field
lossyHalo supports custom fields across Ticket, Customer, Company, and Agent records including text, date, dropdown, multiselect, and dynamic SQL lookup types. We pre-create corresponding Salesforce custom fields (with __c suffix) before migration, mapping field types to their closest Salesforce equivalents. Dynamic SQL lookup fields in Halo require manual replacement with Salesforce custom lookup relationships to the target object; we document each dynamic lookup field during scoping and recommend the replacement approach before migration.
| Halo Service Desk | Salesforce Service Cloud | Compatibility | |
|---|---|---|---|
| Ticket | Case1:1 | Fully supported | |
| Customer | Contact1:many | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Team | Queue1:1 | Fully supported | |
| SLA Policy | Entitlement + Entitlement Processlossy | Fully supported | |
| Knowledge Base Article | Knowledge Article1:1 | Fully supported | |
| Conversation | EmailMessage + Case Comment1:1 | Fully supported | |
| Attachment | ContentDocument1:1 | Fully supported | |
| Asset | Asset1:1 | Fully supported | |
| Custom Field (non-password) | Custom Fieldlossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Halo Service Desk gotchas
Approval and notification automations fire on imported records
Billing calculation bugs affect prepaid ticket scenarios
API rate limits are undocumented
Password custom fields cannot be migrated securely
Salesforce Service Cloud gotchas
Data Export 512MB file size cap breaks large org exports
API Daily Request Limits vary by license edition
No automatic data backup in base Salesforce
Picklist dependencies silently break records when unmapped
Workflow rules fire unexpectedly during data load
Pair-specific challenges
Migration approach
Discovery and Halo automation audit
We audit the source Halo account across ticket volume, custom field count and types, active SLA policies, active approval workflows, KB article count and attachment size, and agent headcount. We also identify any dynamic SQL lookup fields and the external data sources they reference. This audit produces a written migration scope, a pre-flight checklist (pause approvals, disable AI matching, note dynamic lookup fields), and a Sandbox sizing recommendation.
Salesforce schema design and Entitlement configuration
We design the destination schema in Salesforce including custom fields on Case, Contact, Account, Asset, and KnowledgeArticle with API names matching Halo field labels. We configure Salesforce Entitlements and Business Hours to mirror Halo SLA policies. We create Queue records for each Halo Team and configure the Agent-to-Queue membership mapping. Record Types on Case map from Halo ticket types. Schema is deployed to a Salesforce Sandbox via metadata API for validation before production migration.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox using production-like data volume. The customer's Service Cloud admin reconciles record counts (Accounts in, Contacts in, Cases in, Entitlements assigned, Knowledge Articles in), spot-checks 25-50 random Cases against the Halo source for field accuracy, and validates that SLA Entitlements are active and linked correctly. Any field mapping corrections or schema gaps are resolved here. Approval and notification behavior are tested by checking that email alerts did not fire during sandbox import.
Source-side pre-flight and automation disable
Before production migration begins, the customer executes the pre-flight checklist: pause all Halo approval processes (set Start an Approval Process to No on each ticket type), disable AI matching, and silence notification rules. We verify these settings are applied before opening the migration window. If dynamic SQL lookup fields exist, we confirm the customer's plan for replacing them with Salesforce-native lookups or integrations. Password custom fields are explicitly skipped per our security practice.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Halo Companies), Entitlements (for SLA coverage), Users (manual provisioning verified), Contacts (with AccountId resolved), Assets, Cases (with EntitlementId and OwnerId resolved), Conversations (EmailMessage and CaseComment via Bulk API), Knowledge Articles, and Attachments. Each phase emits a row-count reconciliation report before the next phase begins. We monitor for HTTP 429 responses from Halo's undocumented rate limits and back off dynamically, scheduling heavy runs during off-peak hours for accounts exceeding 50,000 records.
Cutover, delta sync, and automation handoff
We freeze Halo writes during cutover, run a final delta migration of any Cases modified during the migration window, then enable Salesforce as the system of record. We deliver a written inventory of every Halo workflow, approval chain, and automation rule for the customer's admin to rebuild in Salesforce Flow. We do not rebuild Halo automations as Salesforce Flow inside the migration scope. We support a one-week hypercare window to resolve reconciliation issues. SLA Entitlement activation and Business Hours timezone verification are performed by the customer's admin in coordination with our team.
Platform deep dives
Halo Service Desk
Source
Strengths
Weaknesses
Salesforce Service Cloud
Destination
Strengths
Weaknesses
Complexity grading
Moderate Helpdesk migration. 1 of 7 objects need a manual workaround.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Halo Service Desk and Salesforce Service Cloud.
Object compatibility
1 of 7 objects need a manual workaround.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
7-object category — typical timelines run 2–7 days end-to-end.
API constraints
Halo Service Desk: Not publicly documented — we monitor for 429 responses and back off dynamically during migrations.
Data volume sensitivity
Halo Service Desk doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Halo Service Desk to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Halo Service Desk to Salesforce Service Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Halo Service Desk
Other ways to arrive at Salesforce Service Cloud
Same-Helpdesk migrations
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.