Helpdesk migration
Field-level mapping, validation, and rollback between Seraph and Zoho Desk. We move data and schema; workflows are rebuilt natively in Zoho Desk.
Seraph
Source
Zoho Desk
Destination
Compatibility
9 of 12
objects map 1:1 between Seraph and Zoho Desk.
Complexity
CModerate
Timeline
3-5 weeks
Overview
Moving from Seraph to Zoho Desk is a helpdesk migration with a known structural risk: Seraph lacks publicly documented API endpoints or a published data model, which means the schema discovery phase is a mandatory first step before any record mapping can be finalized. We start every Seraph migration with a custom API audit that enumerates Seraph's actual object types, field names, and relationships. From that discovery, we map Seraph Tickets to Zoho Desk Tickets, Seraph Contacts and Companies to Zoho Desk Contacts and Accounts, and Seraph Agents to Zoho Desk Agents with department and team assignment. Thread history (comments, attachments, status changes) migrates via Zoho Desk's thread API. Zoho Desk's two-phase migration cadence (Phase 1 bulk load, Phase 2 delta and retry) shapes our own approach: we run a full migration into a staging environment, reconcile record counts, then run production migration in dependency order. Automations, SLAs, knowledge base structure, and reporting dashboards do not migrate as code; we deliver a written inventory of these for the customer's admin to rebuild in Zoho Desk.
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.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Seraph object lands in Zoho Desk, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Seraph
Ticket
Zoho Desk
Ticket
1:1Seraph ticket records map to Zoho Desk Ticket. The Seraph schema must be audited via API or export before field mapping is finalized. We create all Zoho Desk custom fields before ticket import using the department-scoped field model, so that any Seraph custom properties on tickets have a destination. Ticket status, priority, and assignee map from Seraph fields to Zoho Desk Status, Priority, and AgentId. Thread history (comments, attachments, internal notes) migrates as Ticket Threads and Ticket Comments in dependency order: Threads must exist before Comments can reference them via the ThreadId field.
Seraph
Contact
Zoho Desk
Contact
1:1Seraph Contact records map to Zoho Desk Contact. Required fields in Zoho Desk are Last Name and ContactExtId; Email is optional but used as a dedupe key. We create Zoho Desk Contacts before Tickets so that ContactId is available as a lookup on Ticket at import time. Any Seraph custom contact fields map to department-scoped custom fields on Contact in Zoho Desk.
Seraph
Company or Account
Zoho Desk
Account
1:1If Seraph stores organizational records as a separate Company or Account object, those map to Zoho Desk Account. AccountExtId is required; Account Name is required. We create Accounts before Contacts so that Contact.AccountExtId can be populated for the lookup relationship. If Seraph does not have a separate organizational object, we can derive Accounts from Contact company names during the transform phase, but the discovery audit determines which approach applies.
Seraph
Agent
Zoho Desk
Agent
1:1Seraph Agent or User records map to Zoho Desk Agent. We resolve Seraph agent email addresses to Zoho Desk Users by email match. Agents must be provisioned in Zoho Desk before Ticket import so that OwnerId references are satisfied. We also capture Seraph agent roles and map them to Zoho Desk Agent, Light Agent, or Support Administrator roles based on permission requirements specified in Zoho Desk's field documentation. Teams must be created in Zoho Desk before agents can be assigned to them.
Seraph
Team
Zoho Desk
Team
1:1If Seraph has a team or group concept, we map it to Zoho Desk Teams. Zoho Desk's migration documentation notes that Migration Wizard cannot transfer Teams, so we handle team assignment manually during migration: we create the team structure in Zoho Desk first, then assign agents to teams as part of the agent import phase. This ensures agents land in the correct team context before ticket assignment begins.
Seraph
Department
Zoho Desk
Department
lossyZoho Desk organizes agents and tickets by Department, which is a top-level organizational unit. Seraph departments (if they exist) map to Zoho Desk Departments. We configure Zoho Desk departments before agents are imported, as agents are associated with departments at import time. Department-scoped custom fields are created after department configuration so that they are available in the correct scope.
Seraph
Product or Service
Zoho Desk
Product
1:1Seraph product or service records map to Zoho Desk Product. Product records are required before ticket import if tickets reference products. We create Zoho Desk Products with Product Name and Product Code populated from Seraph, then link them to tickets via the ProductId field or a custom product field on Ticket.
Seraph
Attachment
Zoho Desk
Attachment
1:1Seraph ticket attachments map to Zoho Desk Ticket Attachments linked to the parent Ticket. Zoho Desk's Zwitch documentation explicitly states that attachments migrate with the Ticket module selection. We handle attachment migration after the parent ticket record exists, using Zoho Desk's attachment API endpoint with multipart upload handling and file size limits documented in the Zoho Desk API reference.
Seraph
Comment or Reply
Zoho Desk
Ticket Comment
1:1Seraph comment or reply records map to Zoho Desk Ticket Comments, which are child objects of Ticket Threads. If Seraph structures conversations as threads with replies, we map the top-level thread entry to Ticket Thread and subsequent replies to Ticket Comments. The Zoho Desk Assisted Migration Guide specifies that Threads and Ticket Comments are separate sub-modules under Ticket, so we preserve the parent-child relationship by importing Threads first, then Comments with ThreadId resolved.
Seraph
Custom Field
Zoho Desk
Custom Field
lossyAny Seraph custom fields on Ticket, Contact, Account, or Agent map to Zoho Desk Custom Fields scoped to the relevant department. We create the destination custom fields before any data import using the string, decimal, integer, currency, or checkbox field types per Zoho Desk's field type model. Field-level permissions are configured after migration so that sensitive custom fields are restricted to appropriate agent profiles. The Seraph discovery audit determines which custom fields exist and their data types for accurate type mapping.
Seraph
Tag or Label
Zoho Desk
Tag or Custom Field
lossySeraph ticket tags or labels map either to Zoho Desk Tags (a native tagging feature) or to a multi-select picklist custom field, depending on how the customer intends to use the data post-migration. We recommend multi-select picklist for structured classification and native Tags for informal labeling. The customer chooses during scoping. Tags stored as a multi-checkbox property in Seraph map to a multi-select picklist in Zoho Desk without data loss.
Seraph
Engagement History
Zoho Desk
Task and Event
1:1If Seraph tracks engagement history (logged calls, meetings, or tasks separate from ticket thread comments), those map to Zoho Desk Task and Event records linked to the relevant Contact or Account. Task fields (Subject, Status, Priority, Activity Date) migrate from Seraph engagement records. We preserve the original timestamp as ActivityDate so that the activity timeline is ordered correctly in Zoho Desk.
| Seraph | Zoho Desk | Compatibility | |
|---|---|---|---|
| Ticket | Ticket1:1 | Fully supported | |
| Contact | Contact1:1 | Fully supported | |
| Company or Account | Account1:1 | Fully supported | |
| Agent | Agent1:1 | Fully supported | |
| Team | Team1:1 | Fully supported | |
| Department | Departmentlossy | Fully supported | |
| Product or Service | Product1:1 | Fully supported | |
| Attachment | Attachment1:1 | Fully supported | |
| Comment or Reply | Ticket Comment1:1 | Fully supported | |
| Custom Field | Custom Fieldlossy | Fully supported | |
| Tag or Label | Tag or Custom Fieldlossy | Fully supported | |
| Engagement History | Task and Event1: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.
Seraph gotchas
Self-hosted extraction depends on customer-controlled database
Managed-hosted (Standard/Premium) customers extract through vendor
No public API or developer portal
Zoho Desk gotchas
Agent email identity determines comment ownership after migration
Blueprints and SLA policies do not export via API
File upload capped at 10GB per migration batch
Tier-gated export and migration capabilities
Inbound migration is two-phase with a hard Phase 2 cutoff
Pair-specific challenges
Migration approach
Schema discovery and Seraph API audit
We audit the Seraph instance via API access or structured export to enumerate all object types, field names, field types, and relationships. This audit output is the definitive source of truth for all subsequent mapping. If Seraph has no accessible API, we work from a sample CSV export provided by the customer, noting that CSV-based export may omit thread history and attachment metadata that API access would capture. The discovery audit produces a written Seraph schema document that we share with the customer for validation before we finalize the migration specification.
Zoho Desk destination configuration
We configure the Zoho Desk destination before any data import. This includes creating Departments, Teams, and Agent profiles (Agent, Light Agent, Support Administrator), configuring custom fields scoped to the relevant departments, and setting up field-level permissions per agent profile. We also configure Record Types and Sales Processes if the customer's Zoho Desk workflow uses them. All configuration is deployed to a Zoho Desk staging or sandbox portal first for validation before production migration begins.
Sandbox migration and reconciliation
We run a full migration into the Zoho Desk staging portal using production-like data volume. The customer reconciles record counts (Tickets in, Contacts in, Accounts in, Agents in, Attachments in), spot-checks 25-50 random tickets against the Seraph source, and validates that thread history is complete and timestamps are preserved. Any mapping corrections, custom field additions, or department reassignments are resolved in staging before the production migration date is confirmed.
Agent and team provisioning
We extract every distinct Seraph agent and map them to Zoho Desk Users by email match. Teams are created in Zoho Desk first, then agents are assigned to teams during the agent import phase. The customer provisions any missing agents or deactivated agent reactivations identified during the discovery audit. Agent provisioning must be complete before ticket import begins because ticket OwnerId references must resolve to a Zoho Desk User.
Production migration in dependency order
We run production migration in record-dependency order: Agents and Teams (validated), Accounts (from Seraph Companies or derived from Contact company names), Contacts (with AccountId resolved), Products, Tickets (with ContactId and AccountId resolved), Ticket Threads (parent records first), Ticket Comments (with ThreadId resolved), Attachments (after parent tickets exist), and Activity history (Tasks and Events linked to Contacts and Accounts). Each phase emits a row-count reconciliation report before the next phase begins. We use the Zoho Desk REST API for thread and comment migration to preserve authorship, timestamps, and attachment references.
Cutover, validation, and automation inventory handoff
We freeze Seraph write access during the cutover window, run a final delta migration of any records modified during the migration window, then enable Zoho Desk as the system of record. We deliver a written inventory of all Seraph automations, SLA configurations, macros, and reporting dashboards that require rebuild in Zoho Desk, organized by module and priority. We support a one-week hypercare window for reconciliation issues. We do not rebuild automations, macros, or SLA policies as part of the standard migration scope; those are separate configuration work handled by the customer's Zoho Desk admin or a Zoho implementation partner.
Platform deep dives
Seraph
Source
Strengths
Weaknesses
Zoho Desk
Destination
Strengths
Weaknesses
Complexity grading
Moderate Helpdesk migration. 4 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Seraph and Zoho Desk.
Object compatibility
4 of 7 objects need a mapping; the rest are 1:1.
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
Seraph: Not publicly documented.
Data volume sensitivity
Seraph 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 Seraph to Zoho Desk migration scoping. Not seeing yours? Book a call.
Walk through your Seraph to Zoho Desk migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Seraph
Other ways to arrive at Zoho Desk
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.