Helpdesk migration
Field-level mapping, validation, and rollback between Support.ly by 500apps and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.
Support.ly by 500apps
Source
Salesforce Service Cloud
Destination
Compatibility
7 of 12
objects map 1:1 between Support.ly by 500apps and Salesforce Service Cloud.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from Support.ly by 500apps to Salesforce Service Cloud is an urgent structural migration driven by the vendor's mandatory 90-day wind-down announcement. Support.ly's primary object (Tickets) maps to Salesforce Case, with the conversation thread history migrated as EmailMessage records attached to the Case. The platform's severely limited API (roughly 15% of endpoints functional) means we coordinate a vendor-assisted data export directly through 500apps support rather than relying on automated API pulls. We preserve Customer and Company records as Contacts and Accounts with the relationship intact, and rebuild Knowledge Base articles in Salesforce Lightning Knowledge. We do not migrate ticket workflows, automations, or routing rules as code; we deliver a written inventory of every active configuration for the customer's admin to rebuild in Salesforce Flow or Omni-Channel. Given the fixed shutdown window, we treat discovery as an immediate priority rather than a scheduling exercise.
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
Support.ly by 500apps platform overview
Scorecard, SWOT, gotchas, and pricing for Support.ly by 500apps.
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 Support.ly by 500apps 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.
Support.ly by 500apps
Ticket
Salesforce Service Cloud
Case
1:1Support.ly Tickets map to Salesforce Case as the primary helpdesk object. The ticket subject becomes Case Subject, ticket description becomes Case Description, ticket status maps to Case Status (Open, In Progress, Waiting on Customer, Closed), and priority maps to Case Priority. We resolve the linked Customer record to a Salesforce Contact and the Company record to an Account, attaching both as CaseContactId and AccountId respectively. Any incident management flags (escalation level, SLA breach indicators) map to Salesforce Entitlement and Milestone tracking if the destination org has Service Cloud with Entitlement Management enabled.
Support.ly by 500apps
Customer
Salesforce Service Cloud
Contact
1:1Support.ly Customer records map to Salesforce Contact. Contact name, email address, phone, and address fields migrate directly. We use the email address as the external ID for deduplication during import. The customer's ticket history attaches to the Contact via Case records. If the customer has no Company link in Support.ly, the Contact is created without an AccountId (person account not used unless specifically configured in the destination org).
Support.ly by 500apps
Company
Salesforce Service Cloud
Account
1:1Support.ly Company records map to Salesforce Account. Company name becomes Account Name, domain or website becomes the Account Website field, and address fields map to Account Billing Address. We use the company name as the external ID for deduplication. All Contacts linked to the same Company in Support.ly are attached to the same Account in Salesforce via AccountId lookup. If the destination org uses Person Accounts, individual-level companies without a separate contact structure are handled during scoping.
Support.ly by 500apps
Agent
Salesforce Service Cloud
User
1:1Support.ly Agent records map to Salesforce User by email match. We extract the agent list from the vendor export and resolve each against the destination org's User table. Agents without a matching User go to a reconciliation queue for the customer's admin to provision before Case import begins, because OwnerId is a required reference on Case records. Agent team membership maps to Salesforce Public Group or Queue membership based on the scoping choice between team-based routing and skills-based routing.
Support.ly by 500apps
Team
Salesforce Service Cloud
Queue or Public Group
lossySupport.ly Teams group agents for routing purposes. We reconstruct team membership in Salesforce as either Public Groups (for group-based visibility) or Queues (for case assignment routing). The customer selects the routing model during scoping: Omni-Channel with Skills-based routing is the destination-native approach; simple Queue-based assignment is the alternative. We document the mapping of each Support.ly team to its Salesforce equivalent in the handoff inventory.
Support.ly by 500apps
Conversation
Salesforce Service Cloud
EmailMessage
1:1Conversation threads on Support.ly Tickets migrate to Salesforce EmailMessage records linked to the Case. Each message in the thread becomes a separate EmailMessage with the original sender, recipient, body, and timestamp preserved. HTML formatting is preserved where supported; plain-text fallbacks handle content that does not render cleanly. The thread ordering is maintained by timestamp. If Support.ly stores internal notes separately from public replies, internal notes map to CaseComments with IsPublished set to false.
Support.ly by 500apps
Attachment
Salesforce Service Cloud
ContentDocumentLink
1:1File attachments on Support.ly Tickets are downloaded from the vendor export package and uploaded to Salesforce as ContentVersion records, then linked to the parent Case via ContentDocumentLink. We preserve original filenames and attachment ordering. File size and format restrictions are documented during scoping; Salesforce limits individual file uploads to 25 MB per ContentVersion, and certain file types are blocked at the org level. Any attachments exceeding these limits are flagged for the customer's admin to store in an alternative location (Google Drive, SharePoint) with a link recorded on the Case.
Support.ly by 500apps
Tag
Salesforce Service Cloud
Case Tag or Multi-Select Picklist
lossySupport.ly Tags are a flat tagging vocabulary applied to Tickets and KB articles. We migrate tags as Salesforce Case Tags (TopicAssignment records) or as a custom multi-select picklist field on Case, depending on the destination org's tagging strategy. The customer selects during scoping. We preserve the full tag vocabulary so that existing filter logic can be replicated in Salesforce List Views and Reports. Tag count and usage frequency are documented for the admin to prioritize which tags become filterable fields versus general classification.
Support.ly by 500apps
Knowledge Base Article
Salesforce Service Cloud
Knowledge Article
1:1Support.ly KB articles (title, body content, category assignment, and publication status) map to Salesforce Lightning Knowledge articles. We migrate article title, rich-text body, summary, URL name, and publication status. HTML complexity in article bodies is handled with a transformation pass that strips unsupported markup while preserving readable content. Articles are imported as a specific article type (ArticleType) configured in the destination org, with Data Category assignments mapped from Support.ly KB Categories. We flag whether the destination org uses Classic Knowledge or Lightning Knowledge during scoping because the migration tooling differs.
Support.ly by 500apps
KB Category
Salesforce Service Cloud
Data Category Group + Data Category
lossySupport.ly KB Categories define the article navigation hierarchy. We reconstruct this hierarchy in Salesforce using Data Category Groups (top-level) and Data Category records (child levels). Category names migrate as-is; the customer renames any that conflict with existing Data Category naming conventions in the destination org. Articles are assigned to their target Data Categories during import, preserving the original browsing structure for agents who rely on category-based article discovery.
Support.ly by 500apps
Survey and Feedback
Salesforce Service Cloud
Case custom fields or custom object
lossySurvey and feedback data attached to Support.ly Tickets (CSAT scores, response text, NPS ratings) migrates as custom fields on Case or as a linked custom object depending on the data structure complexity. If Support.ly stores only a single satisfaction rating, we create a custom CSAT field (numeric or picklist) on Case. If the survey data includes multi-question responses, we create a custom CaseSurveyResponse object with a lookup to Case. The customer's Salesforce admin enables Field Audit Trail or Data Archive if survey history must be retained for compliance.
Support.ly by 500apps
Custom Fields
Salesforce Service Cloud
Custom Fields
lossySupport.ly custom fields on Tickets and Customers require field-level mapping against the destination Salesforce schema. Since 500apps does not publish custom field schema documentation publicly, we ask the customer to provide a sample record export or screenshots of the custom field configuration during discovery. From that sample, we identify field names, types (text, number, date, picklist, checkbox), and values, then create equivalent custom fields on the Salesforce Case or Contact object before migration. Picklist values migrate as-is with a mapping check for any values that exceed Salesforce's 500-value picklist limit per field.
| Support.ly by 500apps | Salesforce Service Cloud | Compatibility | |
|---|---|---|---|
| Ticket | Case1:1 | Fully supported | |
| Customer | Contact1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Team | Queue or Public Grouplossy | Fully supported | |
| Conversation | EmailMessage1:1 | Fully supported | |
| Attachment | ContentDocumentLink1:1 | Fully supported | |
| Tag | Case Tag or Multi-Select Picklistlossy | Fully supported | |
| Knowledge Base Article | Knowledge Article1:1 | Fully supported | |
| KB Category | Data Category Group + Data Categorylossy | Fully supported | |
| Survey and Feedback | Case custom fields or custom objectlossy | Fully supported | |
| Custom Fields | Custom Fieldslossy | Mapping required |
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.
Support.ly by 500apps gotchas
Entire platform entering mandatory 90-day wind-down
Only ~15% of API endpoints are functional
No publicly documented bulk export or migration API
Standard support response times of 24–72 hours create migration risk
Custom field schemas not publicly documented
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
Immediate discovery and vendor coordination initiation
We begin with an urgent discovery call to audit the Support.ly account: ticket volume, customer and company record counts, KB article count, custom field screenshots or sample exports, agent list, active team structure, and any known routing rules or automations. Simultaneously, we send a coordinated data export request to 500apps support on the customer's behalf. We establish a hard deadline for vendor export delivery and map it to the project schedule. Given the 90-day wind-down window, we treat discovery as an immediate scheduling priority, not a future-week item.
Salesforce schema design and Knowledge configuration
We design the destination Salesforce Service Cloud schema in a Sandbox org. This includes enabling Lightning Knowledge (if not already active), configuring the article type to match Support.ly KB article fields, setting up Data Category Groups for article navigation, creating custom fields on Case and Contact to match the discovered Support.ly custom field schema, configuring Omni-Channel or Queue-based routing based on the customer's team structure, and setting up Case Record Types if multiple ticket categories exist. All schema elements are deployed to Sandbox and validated before production migration begins.
Vendor export receipt and data transformation
Upon receiving the 500apps export file, we validate record counts against the discovery estimates, identify any missing objects or incomplete fields, and transform the data into Salesforce-compatible CSV and JSON formats. We resolve Support.ly Customer-to-Company links and map them to Salesforce Contact-to-Account relationships. Conversation threads are parsed into individual EmailMessage records. KB articles are transformed to the Lightning Knowledge article format with HTML cleaned for Salesforce rendering. Tags are extracted as a separate vocabulary file for tag strategy mapping.
Sandbox migration and reconciliation
We run a full migration into the Salesforce Sandbox using production-like data volume. The customer's Service Cloud admin and support team lead reconcile record counts, spot-check Case-to-Contact linkage, verify conversation thread completeness, and validate KB article rendering in Lightning Knowledge. Any field mapping corrections, missing relationships, or data quality issues are resolved here before production migration. The customer signs off on the Sandbox migration before we proceed to production.
Agent provisioning and ownership reconciliation
We extract every distinct Support.ly Agent from the export and match by email against the destination Salesforce org's User table. Agents without a matching User go to a reconciliation queue. The customer's Salesforce admin provisions any missing Users (active for current agents, inactive for departed agents) and assigns them to the correct Salesforce Profiles and Public Groups or Queues. OwnerId resolution must be complete before Case import begins because every Case requires an OwnerId reference.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Support.ly Companies), Contacts (with AccountId resolved), Users (validated and provisioned), Cases (with ContactId, AccountId, and OwnerId resolved), EmailMessage records (linked to Cases), Attachments (as ContentVersion and ContentDocumentLink), KB Articles (via Salesforce Knowledge API or Data Import Wizard for Knowledge), Tags (as TopicAssignment or custom picklist), and custom object data last if applicable. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and automation handoff
We freeze Support.ly write access during cutover, run a final delta migration of any records modified during the migration window, then enable Salesforce Service Cloud as the system of record. We validate Case thread completeness against the original Support.ly export, confirm KB article publication status, and run a final reconciliation report. We deliver the automation and routing inventory document to the customer's admin team, including a written map of every Support.ly routing rule and its recommended Salesforce Omni-Channel or Flow equivalent. We support a one-week hypercare window for reconciliation issues. Workflow and routing rebuilds are outside standard scope and require a separate engagement.
Platform deep dives
Support.ly by 500apps
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 Support.ly by 500apps 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
Support.ly by 500apps: Not publicly documented.
Data volume sensitivity
Support.ly by 500apps 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 Support.ly by 500apps to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Support.ly by 500apps 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 Support.ly by 500apps
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.