Helpdesk migration
Field-level mapping, validation, and rollback between Octadesk and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.
Octadesk
Source
Salesforce Service Cloud
Destination
Compatibility
8 of 11
objects map 1:1 between Octadesk and Salesforce Service Cloud.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Octadesk to Salesforce Service Cloud is a structural migration from a Brazilian-market omnichannel helpdesk into an enterprise CRM-backed service platform. Octadesk organises support around Tickets and Chats, while Salesforce Service Cloud uses Cases as the primary service object, with a richer Account-Contact-Case hierarchy. We resolve the Ticket-to-Case mapping, flatten Octadesk's customField array schema into typed Salesforce custom fields, and preserve WhatsApp, email, chat, and social channel metadata as Case origin and custom fields. Chat history exports are constrained by Octadesk's 100-item page cap on the /chat endpoint, which we handle with sequential pagination and batch chunking. Octadesk's automation rules and AI agent configurations have no export API and do not migrate; we deliver a written automation audit for the customer's admin to rebuild in Salesforce Flow or Omni-Channel. Agent and Team structures migrate with OwnerId and Queue resolution against the destination org.
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
Octadesk platform overview
Scorecard, SWOT, gotchas, and pricing for Octadesk.
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 Octadesk 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.
Octadesk
Ticket
Salesforce Service Cloud
Case
1:1Octadesk Tickets map to Salesforce Cases as the primary service record. We preserve Ticket status, priority, origin (email, WhatsApp, chat, social), and requester metadata as standard Case fields. Octadesk's channel metadata (source_channel, channel_id) migrates as custom fields on Case. We resolve the Case's ContactId by matching the Octadesk requester contact email against the migrated Contact record. If the destination org uses Service Cloud Professional or above, we configure Case Record Types to mirror Octadesk's ticket categories or pipelines.
Octadesk
Ticket customField array
Salesforce Service Cloud
Custom Fields on Case
lossyOctadesk Tickets store custom fields as an array of objects (customField with key, value, and type properties) rather than flat key-value pairs. We parse each array entry, map it to a typed Salesforce custom field on Case (text, number, date, picklist, or checkbox), and validate type compatibility before insert. Any field with a data type mismatch (e.g., a date stored as a string) is flagged for manual review during scoping. This flattening step is the most schema-intensive part of the migration and must be completed before any Case data is loaded.
Octadesk
Chat
Salesforce Service Cloud
Case Thread (text) + EmailMessage
1:manyOctadesk Chats represent real-time conversation sessions that must be preserved as readable thread history in Salesforce. We export Chat messages via GET /chat with sequential pagination (100 items per page) and reconstruct each Chat as a Case Comment or EmailMessage thread linked to the corresponding migrated Case. Channel metadata (WhatsApp, Instagram, Facebook Messenger, webchat) is preserved in a custom field case_channel__c on the Case. Accounts with very high chat volumes may require extended export windows due to the 100-item page cap; we chunk exports into manageable batches and resume from the last cursor on transient failures.
Octadesk
Contact
Salesforce Service Cloud
Contact
1:1Octadesk Contacts migrate directly to Salesforce Contacts. We use the contact email as the dedupe key during import. Standard fields (name, phone, email, lifecycle data) map to their Salesforce equivalents. Any Octadesk custom contact properties are flattened to Salesforce custom fields on Contact using the same array-parsing approach as Ticket custom fields. Contacts are loaded before Cases so that the ContactId lookup is satisfied at Case insert time.
Octadesk
Company
Salesforce Service Cloud
Account
1:1Octadesk Companies map to Salesforce Accounts. The company domain becomes the Account Website field and is used as a secondary dedupe signal alongside email. Account is created before any Contact import so that the AccountId lookup is resolved on Contact insert. If the destination org uses Person Accounts, we discuss the account model strategy with the customer during scoping because it affects how Contact and Account objects are provisioned.
Octadesk
Agent
Salesforce Service Cloud
User
1:1Octadesk Agents are migrated as Salesforce Users. We resolve Agents by email match against the destination org's User table. Any Octadesk Agent without a matching Salesforce User is held in a reconciliation queue; the customer's admin provisions missing Users before record import resumes. Agent role information from Octadesk (admin, agent, supervisor) maps to Salesforce Permission Sets or the customer's existing role hierarchy.
Octadesk
Team
Salesforce Service Cloud
Queue
1:1Octadesk Teams map to Salesforce Queues for case assignment routing. We preserve team membership during migration and configure Queue membership based on the Octadesk team membership list. If the customer uses Skills-Based Routing in Salesforce (Omni-Channel Professional or above), we map Octadesk team specialisations to Salesforce Skills. Queues are provisioned in the destination org before Case migration begins.
Octadesk
Tag
Salesforce Service Cloud
Case Tag or Custom Picklist
lossyTags from Octadesk Tickets migrate as a Salesforce multi-select picklist field on Case. We normalise tag names to comply with Salesforce picklist restrictions (no special characters, length limits). If the customer uses Salesforce Topics, we discuss migrating tags to TopicAssignment records instead; the customer chooses the strategy during scoping.
Octadesk
Attachment
Salesforce Service Cloud
ContentDocument
1:1Attachments on Tickets and Chats are downloaded from Octadesk (stored as URL references) and re-uploaded to Salesforce as ContentDocument records linked via ContentDocumentLink to the corresponding Case. We validate attachment integrity with hash comparisons post-upload. Large file attachments (>25 MB) may require Salesforce Content workspace provisioning or an AppExchange document management tool.
Octadesk
Automations/Rules
Salesforce Service Cloud
Not migrated (inventory delivered)
1:1Octadesk automation rules (triggers, macros, routing logic) reference internal agent IDs, team IDs, and custom field values by internal identifier and have no public export API. We do not migrate automations as code. We produce a written automation audit report during scoping that lists every Octadesk rule with its trigger conditions, actions, and a recommended Salesforce Flow or Omni-Channel equivalent. The customer's admin or a Salesforce partner rebuilds the automations post-migration. This limitation applies to all Octadesk migrations regardless of destination platform.
Octadesk
AI Agents / Chatbot flows
Salesforce Service Cloud
Not migrated (inventory delivered)
1:1Octadesk's proprietary AI agent and chatbot flow configurations are built on internal schemas not exposed via public API. We do not migrate them. We deliver a structured export of the Octadesk chatbot flow metadata (as JSON if accessible via the UI export) and a written recommendation for Einstein Bots or a third-party chatbot platform on Salesforce. This is a significant rebuild scope that the customer should plan separately.
| Octadesk | Salesforce Service Cloud | Compatibility | |
|---|---|---|---|
| Ticket | Case1:1 | Fully supported | |
| Ticket customField array | Custom Fields on Caselossy | Fully supported | |
| Chat | Case Thread (text) + EmailMessage1:many | Fully supported | |
| Contact | Contact1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Team | Queue1:1 | Fully supported | |
| Tag | Case Tag or Custom Picklistlossy | Fully supported | |
| Attachment | ContentDocument1:1 | Fully supported | |
| Automations/Rules | Not migrated (inventory delivered)1:1 | Not supported | |
| AI Agents / Chatbot flows | Not migrated (inventory delivered)1:1 | 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.
Octadesk gotchas
/chat endpoint pagination capped at 100 items
Automations and AI agents have no export API
Per-seat and per-channel pricing complicates migration sizing
Custom fields on Tickets use an array-based schema
API authentication uses non-standard header
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 scoping
We audit the source Octadesk account across plan tier, active seat count, connected channels, ticket volume, chat volume, custom field definitions (as arrays), automation rules count, and chatbot flow count. We identify all data types and volumes in scope and flag any objects that cannot migrate programmatically (automations, AI agents, chatbot flows). The discovery output is a written migration scope document listing record counts per object, schema mapping for every custom field, and a recommendation on chat history retention scope given the /chat pagination constraint.
Schema preparation in Salesforce
We work with the customer's Salesforce admin to provision the destination schema. This includes creating custom fields on Case for Octadesk custom field flattening, creating custom fields for channel metadata (WhatsApp, Instagram, Facebook Messenger), configuring Case Record Types if the customer uses multiple ticket categories, provisioning Queues for Octadesk Teams, and setting up Permission Sets for migrated Agent records. Schema is validated in a Salesforce Sandbox before production migration begins.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox (Full Copy or Partial Copy) using production-like data volumes. The customer's Service Cloud admin reviews record counts, spot-checks 25-50 records against the Octadesk source, and validates custom field data integrity. Any mapping corrections or schema additions are made in the Sandbox before production migration begins. This step prevents rework in production.
Chat history export with pagination handling
We export Chat records via GET /chat with sequential cursor pagination (100 items per page). For accounts with large chat volumes, we implement batch chunking with resumable export sessions. Chat messages are reconstructed as Case Comment or EmailMessage threads and linked to the corresponding migrated Case. We agree on a chat history retention window with the customer during scoping to manage export duration for high-volume accounts.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Octadesk Companies), Contacts (with AccountId resolved), Users (Agent email resolution), Queues (Team mapping), Cases (with ContactId and OwnerId resolved and channel metadata populated), Chat history threads (linked to Cases), Attachments (as ContentDocument with ContentDocumentLink), and Tags (as multi-select picklist). Each phase emits a row-count reconciliation report before the next phase begins. Bulk API 2.0 is used for phases exceeding 5,000 records.
Cutover, validation, and automation handoff
We freeze Octadesk writes during cutover, run a final delta migration of any records created or modified during the migration window, then enable Salesforce Service Cloud as the system of record. We deliver the automation audit report, chatbot flow inventory, and migration reconciliation summary. We support a one-week hypercare window for reconciliation issues. We do not rebuild Octadesk automations as Salesforce Flow within the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
Octadesk
Source
Strengths
Weaknesses
Salesforce Service Cloud
Destination
Strengths
Weaknesses
Complexity grading
Standard Helpdesk migration. 1 of 7 objects need a manual workaround.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Octadesk 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
Octadesk: Not publicly documented.
Data volume sensitivity
Octadesk 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 Octadesk to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Octadesk 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 Octadesk
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.