Helpdesk migration
Field-level mapping, validation, and rollback between Rhino Support and Salesforce Service Cloud. We move data and schema; workflows are rebuilt natively in Salesforce Service Cloud.
Rhino Support
Source
Salesforce Service Cloud
Destination
Compatibility
6 of 10
objects map 1:1 between Rhino Support and Salesforce Service Cloud.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Rhino Support to Salesforce Service Cloud is a structural migration from a simple ticket-centric model to a full Account-Contact-Case hierarchy. Rhino Support treats Tickets as the primary record with Customers and Companies as secondary objects; Salesforce Service Cloud requires an Account record before a Contact can be created, and the Case must be linked to the Contact and Account for full routing, SLA, and reporting capability. We resolve the Account-Case dependency during scoping, pre-create Account records from Rhino Companies or from the company field on Rhino Customers, and attach Cases to the resolved Account and Contact. Conversation history migrates as Salesforce EmailMessage records with internal-flag preservation so that agent-only notes do not appear on customer-facing timelines. Rhino Support's Knowledge Base articles cannot be retrieved programmatically; we flag this gap and deliver a written article inventory for manual rebuild. Custom ticket fields migrate to Case custom fields, and any fields with no destination equivalent land in a catch-all note field for the customer's admin to resolve post-migration. We do not migrate automations, routing rules, or SLA policies as code; these require a separate configuration engagement in Salesforce Service Cloud.
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
Rhino Support platform overview
Scorecard, SWOT, gotchas, and pricing for Rhino Support.
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 Rhino Support 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.
Rhino Support
Ticket
Salesforce Service Cloud
Case
1:1Rhino Support Tickets map directly to Salesforce Case. The Rhino ticket subject becomes Case Subject, description becomes Description, status maps to Case Status (New, Working, Escalated, Closed), and priority maps to Case Priority (High, Medium, Low). Rhino's assignee maps to Case OwnerId via the Agent-to-User lookup. Ticket ID is preserved in a custom field rhino_ticket_id__c for audit. Open and closed tickets migrate with full status history.
Rhino Support
Customer
Salesforce Service Cloud
Contact
1:1Rhino Customer records map to Salesforce Contact. Email is the unique identifier and dedupe key. Name, phone, and any customer-level custom fields map to Contact fields. If the customer has a company association in Rhino, we resolve the Company to a Salesforce Account before inserting the Contact so that AccountId is populated on the Contact record. This is critical for Case linkage.
Rhino Support
Company
Salesforce Service Cloud
Account
1:1Rhino Company records map to Salesforce Account. Company name becomes Account Name, website becomes Account Website, and any company-level custom fields map to Account custom fields. If no Company object exists in the customer's Rhino plan or schema, we extract the company name from the Customer record's company field and create Account records with that name. Account pre-creation is required before Contact insert because Salesforce requires AccountId on Contact.
Rhino Support
Agent
Salesforce Service Cloud
User
1:1Rhino Agent records map to Salesforce User. We match by email address as the dedupe key. Any Agent without a matching Salesforce User goes to a reconciliation queue for the customer's admin to provision before the migration continues. Agent display names and team associations are preserved in custom fields rhino_agent_name__c and rhino_team__c so that permissions can be rebuilt in Salesforce post-migration.
Rhino Support
Team
Salesforce Service Cloud
Queue or Group
lossyRhino Teams map to Salesforce Queues (for Case routing) or Groups (for collaboration). During scoping, we determine whether the customer intends to use Salesforce Omni-Channel routing, which uses Queues for work item distribution, or whether a simple Group-based visibility model suffices. The customer's admin configures Queue membership in Salesforce after migration using the team roster we provide.
Rhino Support
Conversation
Salesforce Service Cloud
EmailMessage
1:1Rhino ticket conversations map to Salesforce EmailMessage records linked to the parent Case. We preserve the author type flag (internal agent versus customer) using Salesforce's EmailMessage.headers field or a custom field to distinguish internal-only notes from customer-visible thread entries. Subject line from the parent ticket migrates as EmailMessage.Subject. Message body migrates as plain text or HTML depending on the destination email configuration.
Rhino Support
Custom Ticket Field
Salesforce Service Cloud
Case Custom Field
lossyRhino custom ticket fields catalogued during discovery are mapped to Salesforce Case custom fields of equivalent type (text, number, date, picklist). We pre-create the custom fields in Salesforce via metadata API before migration begins. Where no equivalent field exists in the destination, values write to a catch-all custom field case_rhino_notes__c and we flag the customer to create the proper field and migrate values post-migration.
Rhino Support
Attachment
Salesforce Service Cloud
ContentDocumentLink
1:1Rhino ticket attachments migrate as Salesforce ContentDocument and ContentVersion records attached to the parent Case via ContentDocumentLink. We retrieve attachments via the accessible download URLs in Rhino and upload to Salesforce. Files exceeding Salesforce's 25 MB per document limit or formats blocked by Salesforce's virus scanning are flagged for manual re-upload. The ContentDocumentLink visibility is set to AllUsers for customer-visible files.
Rhino Support
Tag
Salesforce Service Cloud
Case Custom Field or Label
lossyRhino ticket tags migrate as a comma-delimited text string in a custom Case field case_tags__c, or as Salesforce Topics with TopicAssignment records if the customer uses the Lightning Topics feature. The choice is made during scoping based on the customer's intended use of tag data post-migration. Tag length is validated against Salesforce's 255-character limit per field.
Rhino Support
Customer
Salesforce Service Cloud
Case Origin mapping
lossyRhino does not have a structured Case Origin field but tracks the intake channel (email, web form, API) per conversation. We derive the Case Origin value from the first conversation's channel type and map it to Salesforce Case.Origin (Email, Web, Phone, Chat). Any intake channels not supported by Salesforce's standard picklist values are flagged for custom picklist extension.
| Rhino Support | 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 Grouplossy | Fully supported | |
| Conversation | EmailMessage1:1 | Fully supported | |
| Custom Ticket Field | Case Custom Fieldlossy | Fully supported | |
| Attachment | ContentDocumentLink1:1 | Fully supported | |
| Tag | Case Custom Field or Labellossy | Fully supported | |
| Customer | Case Origin mappinglossy | 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.
Rhino Support gotchas
No free trial means evaluation risk falls entirely on the customer
Knowledge Base API is not exposed for migration
Custom ticket field schema varies by plan and may require discovery mapping
Agent role permissions may not map 1:1 to destination access controls
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 schema audit
We audit the source Rhino Support account to enumerate all active objects: tickets, customers, companies, agents, teams, custom fields, conversation counts, and attachment volumes. We identify the Rhino intake channel data (email, web) to map to Salesforce Case Origin. We verify whether the customer's plan exposes a distinct Company object or whether company data lives in the Customer record. We also inventory any visible routing rules, SLA tiers, or auto-response triggers for the automation handoff document. The discovery output is a written scope document with record counts, schema map, and a Salesforce edition recommendation (Service Cloud Starter at $25/user for basic cases, Professional or Enterprise for Omni-Channel, Knowledge, or Field Service).
Account-Case hierarchy resolution and schema pre-creation
We design the destination Salesforce schema before any data moves. This includes creating custom fields on Case (case_rhino_ticket_id__c, case_rhino_notes__c, emailmessage_is_internal__c), pre-creating any custom fields discovered in the Rhino schema that have no standard Salesforce equivalent, configuring Case Origin picklist values to match Rhino intake channels, and creating the case_tags__c field or configuring Topics. If Omni-Channel routing is planned, we create Queues during this phase. All schema changes deploy to a Salesforce Sandbox first for validation before production.
Sandbox migration and reconciliation
We run a full migration into a Salesforce Sandbox using production-like data volume. The customer's service cloud admin reviews record counts (Cases in, Contacts in, Accounts in), spot-checks 20-40 records against the Rhino source for field-level accuracy, and validates that the internal/external message flags are set correctly on EmailMessage records. The admin signs off on the schema and mapping before production migration begins. Any mapping corrections or custom field additions happen in Sandbox, not production.
Owner reconciliation and User provisioning
We extract every distinct Rhino Agent referenced on tickets and conversations and match by email against the Salesforce destination org's User table. Agents without a matching User go to a reconciliation queue. The customer's Salesforce admin provisions Service Cloud licenses and User accounts for any missing agents before record import resumes. Without Salesforce User records, Case OwnerId cannot be populated, which breaks assignment and routing.
Production migration in dependency order
We run production migration in record-dependency order: Accounts (from Rhino Companies or Customer company field), Contacts (with AccountId resolved), then Cases (with ContactId, AccountId, and OwnerId resolved). EmailMessage records attach to Cases in the same pass. Attachments upload as ContentDocument records after the parent Case exists. Custom field values write to pre-created Salesforce custom fields in the same pass as their parent record. Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and automation rebuild handoff
We freeze Rhino Support writes 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 deliver the automation inventory document describing every identified Rhino routing rule, SLA tier, and auto-response trigger with recommended Salesforce Flow, Entitlement Process, and Assignment Rule equivalents. We support a five-business-day hypercare window for reconciliation issues. We do not configure Salesforce Flow, Entitlement Processes, or Omni-Channel routing within the migration scope; these are separate configuration engagements.
Platform deep dives
Rhino Support
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 Rhino Support 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
Rhino Support: Not publicly documented — typical SaaS limits assumed and confirmed during scoping.
Data volume sensitivity
Rhino Support exposes a bulk API — large-volume migrations stream efficiently.
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 Rhino Support to Salesforce Service Cloud migration scoping. Not seeing yours? Book a call.
Walk through your Rhino Support 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 Rhino Support
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.