Helpdesk migration

Migrate from Halo Service Desk to Salesforce Service Cloud

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 logo

Halo Service Desk

Source

Salesforce Service Cloud

Destination

Salesforce Service Cloud logo

Compatibility

73%

8 of 11

objects map 1:1 between Halo Service Desk and Salesforce Service Cloud.

Complexity

CModerate

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

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.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Halo Service Desk logo

Halo Service Desk

What's pushing teams away

  • Billing calculation bugs cause invoicing disputes — multiple users on Reddit report incorrect prepaid calculations and billing scenarios that require manual correction and vendor intervention.
  • Support responsiveness falls short of expectations — negative reviews cite delays, unhelpful responses, and bugs that persist across multiple support tickets.
  • Integration failures create operational friction — some users report that third-party integrations break without clear resolution paths, leading to delays and blame-splitting between vendors.

Choosing

Salesforce Service Cloud logo

Salesforce Service Cloud

What's pulling them in

  • Deep Salesforce ecosystem integration with Sales Cloud, Marketing Cloud, and custom Apex apps creates a single pane of glass for enterprise customer data and cross-functional workflows.
  • Omnichannel case routing — email, chat, phone, social, and messaging — unified under one case object means agents do not lose context when customers switch channels mid-interaction.
  • AI for customer service (Einstein AI / Agentforce) offers automated case classification, suggested replies, and chatbot routing that reduces Tier-1 ticket volume without manual rule authoring.
  • Entitlement and milestone tracking enforces SLA compliance natively, automatically calculating breach windows and surfacing violations to supervisors in dashboards.
  • Salesforce's massive AppExchange ecosystem provides pre-built connectors, industry-specific managed packages, and third-party tools that extend Service Cloud beyond its out-of-box capabilities.

Object mapping

How Halo Service Desk objects map to Salesforce Service Cloud

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

maps to

Salesforce Service Cloud

Case

1:1
Fully supported

Halo 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

maps to

Salesforce Service Cloud

Contact

1:many
Fully supported

Halo 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

maps to

Salesforce Service Cloud

Account

1:1
Fully supported

Halo 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

maps to

Salesforce Service Cloud

User

1:1
Fully supported

Halo 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

maps to

Salesforce Service Cloud

Queue

1:1
Fully supported

Halo 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

maps to

Salesforce Service Cloud

Entitlement + Entitlement Process

lossy
Fully supported

Halo 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

maps to

Salesforce Service Cloud

Knowledge Article

1:1
Fully supported

Halo 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

maps to

Salesforce Service Cloud

EmailMessage + Case Comment

1:1
Fully supported

Halo 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

maps to

Salesforce Service Cloud

ContentDocument

1:1
Fully supported

File 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

maps to

Salesforce Service Cloud

Asset

1:1
Fully supported

Halo 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)

maps to

Salesforce Service Cloud

Custom Field

lossy
Fully supported

Halo 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.

Gotchas + challenges

What specifically takes care here

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 logo

Halo Service Desk gotchas

High

Approval and notification automations fire on imported records

High

Billing calculation bugs affect prepaid ticket scenarios

Medium

API rate limits are undocumented

Medium

Password custom fields cannot be migrated securely

Salesforce Service Cloud logo

Salesforce Service Cloud gotchas

High

Data Export 512MB file size cap breaks large org exports

High

API Daily Request Limits vary by license edition

High

No automatic data backup in base Salesforce

Medium

Picklist dependencies silently break records when unmapped

Medium

Workflow rules fire unexpectedly during data load

Pair-specific challenges

  • Halo approval and notification rules fire on migrated Cases

    Halo's workflow rules trigger on record creation by default. When we import records in bulk, every approval process and email notification will fire against migrated Cases unless these automations are pre-disabled in Halo. We provide a pre-flight checklist that requires pausing all approval processes and silencing notifications before the migration window opens. Failure to do this results in email floods to customers, unnecessary SLA clock starts on dormant records, and approval records that reference cases with invalid or outdated data. This step must be explicitly confirmed before we begin Case migration.

  • Halo Customer-to-Account schema gap requires Account creation before Contact migration

    Halo Customers are standalone records; Salesforce Contacts require a parent Account. The natural migration error is creating Contacts without AccountId, resulting in orphaned records that cannot participate in Salesforce flows, reports, or sharing rules. We resolve this by creating an Account for every Halo Company first, then creating Contacts linked to those Accounts. For Customers with no linked Company, we create placeholder Accounts. This dependency order must be maintained during migration; inserting Contacts before Accounts triggers a foreign-key violation in Salesforce.

  • Halo SLA policies require manual Entitlement configuration in Salesforce

    Halo SLA Policies have no automated export. We translate them into Salesforce Entitlements and Entitlement Processes during schema design, but the Business Hours calendar, milestone definitions, and entitlement process triggers must be configured manually in Salesforce before Case migration. If Entitlement configuration is incomplete at migration time, SLA clocks do not resume correctly on migrated Cases, which creates a compliance risk for organizations with contractual SLA commitments to internal or external customers. We flag this during scoping and recommend completing Entitlement configuration in the Sandbox validation phase.

  • Halo custom field types require manual schema translation

    Halo supports dynamic SQL lookup fields that query external databases at runtime. These have no Salesforce equivalent as a native field type. We skip dynamic SQL lookup fields during migration and document each one for the customer's admin to replace with a Salesforce custom lookup relationship, a custom picklist, or an integration to the external data source. Multiselect picklist fields in Halo map correctly to Salesforce multiselect picklists, but dropdown (single-select) fields require careful field-type selection during schema design to avoid value-truncation or picklist-lock issues.

  • Halo billing calculation bugs are not corrected by migration

    Halo's known billing calculation bugs in prepaid ticket scenarios are a pre-existing platform condition, not a migration artifact. Migrating ticket records to Salesforce does not resolve incorrect billed amounts in Halo. We flag all billed records during scoping and recommend a financial reconciliation before migration closes if any prepaid tickets have been processed in Halo. The customer should review billing history independently and correct any invoice amounts before cutting over to Salesforce as the billing system of record.

Migration approach

Six steps for a successful Halo Service Desk to Salesforce Service Cloud data migration

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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

Context on both ends of the pair

Halo Service Desk logo

Halo Service Desk

Source

Strengths

  • ITIL-aligned out of the box with Project and Change Management workflows built in
  • Highly customizable ticket types, fields, pipelines, and approval chains
  • REST API covers the entire application surface — anything in the UI is accessible programmatically
  • Per-agent pricing model is transparent and predictable for MSP billing cycles
  • Q4 2024 updates added Service Availability Tracking and Intelligent Event Management for proactive alerting

Weaknesses

  • Billing calculation logic contains known bugs, particularly in prepaid billing scenarios
  • Support responsiveness is a recurring complaint in user reviews and Reddit threads
  • API rate limits are not publicly documented, making large-volume migration planning difficult
  • Performance can degrade with large datasets — some users report slow UI and lag during high-volume periods
Salesforce Service Cloud logo

Salesforce Service Cloud

Destination

Strengths

  • Enterprise-grade security, compliance certifications, and audit logging available across all paid editions with Shield offering enhanced event monitoring.
  • Scalable multi-tenant cloud architecture supporting orgs from 5 users to 150,000+ seat enterprises without infrastructure management overhead.
  • Omnichannel contact center unifying email, live chat, phone, messaging, and social into a single Case timeline per customer interaction.
  • Rich workflow automation via Salesforce Flow, Process Builder, and Apex triggers enabling complex case escalation, routing, and field updates.
  • Native AI capabilities (Agentforce / Einstein) for case auto-routing, classification, suggested responses, and chatbot escalation without third-party add-ons.

Weaknesses

  • Per-seat pricing model with no contact limits creates unpredictable cost scaling for large organizations adding many agents over time.
  • No automatic data backup — organizations must purchase a third-party backup solution or build manual Data Loader exports to protect against data loss from human error, failed deployments, or integrations overwriting records.
  • Steep learning curve for non-technical users requiring dedicated admin resources and formal training investment before teams reach productive velocity.
  • Annual contract requirements and limited pro-ration on exit create significant switching cost friction, especially for organizations evaluating alternatives mid-cycle.
  • Add-on licensing (CPQ, Einstein Activity Capture, Shield, Data Cloud) can double effective per-seat cost without clear documentation of which features are included in base tiers.

Complexity grading

How hard is this migration?

Moderate Helpdesk migration. 1 of 7 objects need a manual workaround.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Halo Service Desk and Salesforce Service Cloud.

  • Object compatibility

    C

    1 of 7 objects need a manual workaround.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Halo Service Desk: Not publicly documented — we monitor for 429 responses and back off dynamically during migrations.

  • Data volume sensitivity

    B

    Halo Service Desk doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Halo Service Desk to Salesforce Service Cloud migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Halo Service Desk to Salesforce Service Cloud data migrations

Answers to the questions buyers ask most during Halo Service Desk to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.

Can't find your answer?

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 consultation

Most migrations land between three and five weeks for accounts under 10,000 tickets and 5,000 customers with straightforward custom field configurations. Migrations exceeding 25,000 tickets, complex Halo SLA policy structures requiring full Entitlement translation, heavy attachment volumes, or dynamic SQL lookup field replacement move to eight to twelve weeks. Salesforce Sandbox validation, Entitlement configuration, and Automation inventory delivery add scope that extends timeline beyond the raw data transfer duration.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Halo Service Desk.
Land in Salesforce Service Cloud, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day