Helpdesk migration

Migrate from Siit to Salesforce Service Cloud

Field-level mapping, validation, and rollback between Siit and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.

Siit logo

Siit

Source

Salesforce Service Cloud

Destination

Salesforce Service Cloud logo

Compatibility

73%

8 of 11

objects map 1:1 between Siit and Salesforce Service Cloud.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Siit to Salesforce Service Cloud is an ITSM platform migration that replaces a Slack and Teams-native conversational helpdesk with a traditional portal-based service cloud. Siit organizes work around Admins who resolve requests and uses a per-Admin billing model; Salesforce bills per user with Service Cloud licenses that differentiate agents, supervisors, and portal customers. We extract Siit Requests, People records, Services catalog items, Equipment device records, and communication threads via Siit's Bearer-token REST API, then map them into Salesforce Case, Contact, Asset, and custom objects. Inbox routing maps to Salesforce Queues and Assignment Rules. SLA data exports as workflow metadata and gets rebuilt as Salesforce Entitlement Processes and Milestones. Siit Workflow definitions, including trigger conditions and approval chains, are documented for the customer's admin to rebuild in Salesforce Flow; we do not migrate them as executable code.

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

Siit logo

Siit

What's pushing teams away

  • Teams accustomed to traditional ticket portals find the conversational AI-first workflow disorienting and resist the shift in how they submit requests.
  • Smaller enterprise customer base means fewer published case studies and reference architectures for complex ITSM environments.
  • Physical asset management capabilities are limited compared to purpose-built CMMS tools, causing facilities-heavy teams to look elsewhere.
  • Implementation timelines of days to weeks still require workflow design effort that smaller teams underestimate.
  • Lack of a freemium tier or permanent free plan forces a commitment decision before fully validating fit.

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 Siit objects map to Salesforce Service Cloud

Each row shows how a Siit 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.

Siit

Request

maps to

Salesforce Service Cloud

Case

1:1
Fully supported

Siit Requests map to Salesforce Case as the core ticket object. title becomes Subject, description migrates as Description, status (open, pending, resolved, closed) maps to Case Status picklist values we pre-configure, priority maps to Case Priority, and submitted_from (employee_portal, slack, mail, ms_teams) becomes a custom Case field channel__c to preserve the intake source. We resolve assignee_admin_uid to a Salesforce User record via the People-to-User mapping before Case insert so that OwnerId is satisfied. SLA timestamps (first_replied_at, first_completed_at) migrate as custom Case fields since standard Salesforce Case timestamps are set by trigger logic, not direct assignment.

Siit

People

maps to

Salesforce Service Cloud

Contact

1:1
Fully supported

Siit People records store employee directory data including department, team, office location, legal entity, employment type, and lifecycle stage. For Service Cloud, the relevant People fields map to Contact: department, team, and location map to custom Contact fields; legal_entity and employment_type map to custom fields. Employees who only submit requests in Siit map to Contact without a Salesforce User license; Admins who resolve requests map to a Salesforce User with the appropriate Service Cloud Profile. We use email as the deduplication key during import.

Siit

Services

maps to

Salesforce Service Cloud

Custom Object or Salesforce Knowledge

1:1
Fully supported

Siit Services represent IT catalog items employees request, each with configuration metadata and category assignments. Salesforce Service Cloud does not have a native catalog object equivalent, so we create a custom object service_catalog__c with fields for Name, Category, Description, and Workflow_Reference__c (carrying the Siit workflow association). The customer can alternatively use Salesforce Knowledge articles as a self-service catalog; we scope the preferred approach during discovery based on whether the catalog needs entitlement linkage.

Siit

Equipment

maps to

Salesforce Service Cloud

Asset

1:1
Fully supported

Siit Equipment records represent physical and virtual devices with lifecycle attributes, ownership details, and key configuration fields. Equipment maps directly to Salesforce Asset, which supports Name, Status (Planned, In Stock, In Use, In Maintenance, Retired), InstallDate, PurchaseDate, SerialNumber, and a Link to a Contact or Account as the asset owner. We resolve target_uid from the Siit Equipment record to the corresponding Contact or Account Salesforce record via the People mapping.

Siit

Applications

maps to

Salesforce Service Cloud

Custom Object app_inventory__c

1:1
Fully supported

Siit Application inventory tracks software assets with ownership fields, lifecycle status, and category metadata. Application ownership linking to employee or equipment records maps to a custom object app_inventory__c with lookup relationships to Asset (for device linkage) and Contact (for user ownership). lifecycle_status becomes a picklist field with values matching the Siit source values, preserving the software asset taxonomy the team uses for ITAM reporting.

Siit

Communication

maps to

Salesforce Service Cloud

EmailMessage

1:1
Fully supported

Siit Communication exports include outbound messages and satisfaction survey responses linked to Requests. Each thread maps to Salesforce EmailMessage records linked to the parent Case via the WhatId field. We set MessageDate to the original Siit timestamp and preserve the satisfaction survey score in a custom Case field csat_score__c. Outbound messages are inserted as EmailMessage with direction = Outgoing. If the customer used Slack or Teams threaded messages within Siit, we flatten the thread into a chronological sequence of EmailMessage records to preserve context in the Case timeline.

Siit

Inboxes

maps to

Salesforce Service Cloud

Queue

lossy
Mapping required

Siit Inboxes route requests to specific teams or queues. We map each Siit Inbox to a Salesforce Queue with the Queue Name matching the Inbox title and the Queue Type set to Cases. During Case migration, we assign cases to the appropriate Queue based on the Inbox assignment in Siit. If the customer used Inbox-level SLA configurations, those translate to Salesforce Entitlement Processes linked to the Queue via Assignment Rules.

Siit

SLA Data

maps to

Salesforce Service Cloud

Entitlement Process and Business Hours

lossy
Fully supported

Siit Request records include first_replied_at and first_completed_at timestamps, and SLA timers and escalation configurations export as part of workflow and request data. We rebuild these in Salesforce as Entitlement Processes with First Response Time and Next Response Time milestones, using Business Hours for working-hour calculations. The original Siit SLA status (met, breached, in_progress) migrates as a custom Case field original_sla_status__c to preserve the audit trail.

Siit

Tags

maps to

Salesforce Service Cloud

Multi-Select Picklist

lossy
Fully supported

Siit Tags are associated with Requests via tag_uids arrays. We extract all unique tags during the migration scan and create a Salesforce multi-select picklist field tag__c on Case with each distinct Siit tag as a picklist value. Tags used for categorization and filtering preserve the taxonomy teams rely on for reporting. If there are more than 150 unique tags, we use a custom object tag__c with a junction object casetag__c to avoid Salesforce multi-select picklist limits.

Siit

Custom Form Inputs

maps to

Salesforce Service Cloud

Custom Case Fields

1:1
Mapping required

Siit Requests support custom_form_inputs as key-value label/value pairs with no fixed schema per request type and organization. We extract all unique custom field labels during the migration scan and create Salesforce custom fields on Case (custom_<label>__c) with appropriate types: text fields for string values, number fields for numeric values, and date fields for date values. If a label contains special characters, we sanitize it to a Salesforce-valid API name. Where the destination Salesforce edition has a field limit, we serialize remaining custom inputs as a structured JSON blob in a custom long-text field custom_inputs_raw__c.

Siit

People (Admin seat type)

maps to

Salesforce Service Cloud

User

1:1
Fully supported

Siit Admins are the billable seat type in Siit and must be provisioned in Salesforce as User records with the appropriate Service Cloud license (Agent, Supervisor, or Lightning Experience depending on role). We use email as the matching key between Siit People records and Salesforce Users. Users without a matching Salesforce User go to a reconciliation queue for the customer's admin to provision before record import resumes, because Case.OwnerId requires a valid User or Queue reference at insert time.

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.

Siit logo

Siit gotchas

High

Admin-based pricing is migration-critical for billing accuracy

High

Workflow state and logic do not transfer automatically

Medium

Open API requires scoping permission before migration access

Medium

Custom form inputs have no stable schema across requests

Low

Billing ownership is restricted to the account owner

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

  • Inbox routing has no direct Salesforce equivalent

    Siit Inboxes route requests to specific teams or queues and may carry Inbox-level SLA configurations. Salesforce Queues and Assignment Rules handle queue-based routing, but they require pre-configuration before any Case can be assigned. We create Salesforce Queues during the schema phase, mapping each Siit Inbox to a Queue with the same team name. If the customer used Inbox-specific SLA timers, those require translation to Salesforce Entitlement Processes linked to the Queue via Assignment Rules. Migrations that skip Inbox mapping result in Cases landing in the default Salesforce queue with no SLA tracking applied.

  • Custom form inputs have no stable schema across requests

    Siit Requests support custom_form_inputs as label/value pairs with no fixed schema per organization. The full set of custom field labels varies per request type and team. We extract all unique labels during the migration scan, sanitize them to Salesforce-valid API names, create matching custom fields on Case before import, and map values during import. If the destination Salesforce org has reached its custom field limit, we fall back to a structured JSON serialization in a long-text field. The customer's admin must review the custom field set post-migration to consolidate any duplicate or orphaned labels that accumulated in Siit.

  • Admin seat provisioning determines Salesforce license count

    Siit bills based on Admin count—users who resolve requests. Non-admin employees submit requests but do not count toward billing. During migration, only users who will actively resolve Cases should be provisioned as Salesforce Users with Service Cloud licenses; employees who only submit requests should be provisioned as Customer Portal users orContacts without Salesforce user licenses. We flag the Admin versus non-Admin split during scoping so that the customer's Salesforce license procurement matches the actual resolver count and avoids a billing spike in month one. The customer coordinates Salesforce license procurement directly with their Salesforce account team.

  • Siit Workflow logic does not migrate as code

    Siit Workflows include trigger conditions, approval chains, and automated actions defined in a low-code builder. These workflow definitions export as metadata (title, state, trigger, category, usage counts) but the automated execution logic cannot be directly transferred to Salesforce. We document every active Siit Workflow with its trigger conditions, conditions, and actions in a written workflow inventory. The customer's admin or a Salesforce consultant rebuilds them as Salesforce Flow, using the inventory as the specification. Approval chains specifically map to Salesforce Approvals, which use a different data model from Siit's approval builder.

  • Time zone differences can shift SLA timestamps during migration

    Date and time fields in Siit use the organization's configured time zone. Salesforce stores all DateTime fields in UTC and displays them based on the user's locale setting. If the customer's Siit organization uses a different time zone than the Salesforce org default, SLA timestamps (first_replied_at, first_completed_at) can appear shifted by hours when displayed in Salesforce. We explicitly set the Salesforce Organization Time Zone field during schema setup and flag any Business Hours configuration to ensure SLA milestone calculations use the correct working-hour calendar.

Migration approach

Six steps for a successful Siit to Salesforce Service Cloud data migration

  1. Discovery and API credential validation

    We audit the Siit tenant across plan tier, total Request count, active Inbox count, People record volume, Services catalog size, Equipment and Application inventory, active Workflow list, and communication thread volume. We request Siit API credentials during discovery and run a test batch against the Siit REST API to validate pagination limits, response field availability, and any undocumented rate limits. If the API is unavailable at the required plan tier, we fall back to CSV exports from Siit's Reporting section and document the field coverage difference in the discovery output. We pair the Siit audit with a Salesforce Service Cloud edition assessment and Service Cloud license count estimation based on the Admin-to-User provisioning split.

  2. Schema design and Queue configuration

    We design the Salesforce destination schema in a Sandbox org before any production migration. This includes provisioning custom fields on Case for custom_form_inputs, creating the service_catalog__c and app_inventory__c custom objects with their field sets, configuring Salesforce Queues (one per Siit Inbox), designing Entitlement Processes and Business Hours for SLA translation, and creating the csat_score__c and original_sla_status__c custom fields for satisfaction and SLA audit data. We configure Case Record Types if the customer has multiple request categories that require different Page Layouts or Business Hours. Schema is deployed via Salesforce metadata API or change set.

  3. Sandbox migration and reconciliation

    We run a full migration into a Salesforce Sandbox (Full Copy) using a representative data volume. The customer's Service Desk manager reconciles record counts (Cases in, Contacts in, Assets in, custom object records in), spot-checks 25-50 random Cases against the Siit source for field accuracy and timestamp correctness, and validates that Inbox-to-Queue routing produced the correct Case distribution. SLA timestamp translation is spot-checked for any time zone discrepancies. The customer signs off the schema and mapping before production migration begins.

  4. User provisioning and Owner reconciliation

    We extract every distinct Admin from Siit People records and match by email against the Salesforce destination org's User table. Siit Admins who resolve requests are provisioned as Salesforce Users with the appropriate Service Cloud license (Agent, Supervisor, or both). Siit People records classified as non-admin employees (submitters only) map to Contact records without a Salesforce User license. Any Siit Admin without a matching Salesforce User goes to a reconciliation queue for the customer's admin to provision before Case migration resumes, because Case.OwnerId is required at insert time.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Salesforce Users (validated by admin), Queues (configured), Contacts (People mapping with dedupe by email), Cases (with OwnerId resolved to Contact, Queue, or User, with channel__c, SLA fields, csat_score__c, and original_sla_status__c populated), Assets (Equipment mapping with ownership lookups resolved), service_catalog__c records, app_inventory__c records, EmailMessage records via Bulk API 2.0 linked to Cases, and Tags mapped to multi-select picklist fields. Each phase emits a row-count reconciliation report before the next phase begins. We use Salesforce Bulk API 2.0 with chunking and exponential backoff on API limit responses for high-volume Case and EmailMessage phases.

  6. Cutover, delta sync, and Workflow inventory handoff

    We freeze Siit writes during the cutover window, run a final delta migration of any records modified during the migration window, then enable Salesforce Service Cloud as the system of record. We deliver the Siit Workflow inventory document to the customer's admin team as the specification for Salesforce Flow rebuilds. We provide a one-week hypercare window for reconciliation issues raised by the service desk team. We do not rebuild Siit Workflows as Salesforce Flow inside the migration scope; that is a separate engagement or an internal admin task.

Platform deep dives

Context on both ends of the pair

Siit logo

Siit

Source

Strengths

  • Slack and Microsoft Teams-native request intake with conversational AI triage reduces employee friction to near zero.
  • Admin-based pricing means unlimited employee headcount with predictable monthly costs tied only to resolver count.
  • SOC 2 Type II and GDPR compliant with role-based access controls out of the box.
  • 100+ native integrations including Jira Service Management, ServiceNow, Okta, Jamf, and BambooHR with bi-directional sync.
  • Days-to-weeks implementation with pre-built workflows avoids the 5+ month professional services engagements common in legacy ITSM.

Weaknesses

  • AI-first workflow paradigm requires significant team adjustment compared to traditional portal-based ticketing.
  • Smaller enterprise customer base and fewer published long-term case studies than ServiceNow or Jira Service Management.
  • Physical asset and equipment lifecycle management is less mature than purpose-built CMMS platforms.
  • No freemium or permanent free tier limits risk-free evaluation for small teams or startups.
  • The platform's maturity is relatively recent compared to established ITSM vendors, meaning fewer community resources and third-party consultants.
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?

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

B

Overall complexity

Standard migration

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

  • Object compatibility

    B

    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

    Siit: Not publicly documented; varies by plan tier.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Siit 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 Siit to Salesforce Service Cloud data migrations

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

Can't find your answer?

Walk through your Siit to Salesforce Service Cloud migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Straightforward migrations with fewer than 3,000 Requests, 2,000 People records, and a single Inbox structure complete in three to five weeks. Migrations with multiple Inbox queues, Equipment and Application inventory records, historical communication threads exceeding 50,000 records, or an existing Salesforce org that requires org-specific mapping extend to eight to twelve weeks. The primary timeline drivers are Queue and Entitlement Process configuration, custom field schema design for custom_form_inputs, and Bulk API handling for large activity histories.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Siit.
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