Helpdesk migration
Field-level mapping, validation, and rollback between Desku.io and Zoho Desk. We move data and schema; workflows are rebuilt natively in Zoho Desk.
Desku.io
Source
Zoho Desk
Destination
Compatibility
10 of 14
objects map 1:1 between Desku.io and Zoho Desk.
Complexity
CModerate
Timeline
2-4 weeks
Overview
Moving from Desku.io to Zoho Desk is a structural migration that requires careful handling of two platforms with fundamentally different organizational models. Desku.io groups work into Shared Inboxes and Tickets with a flat tagging taxonomy; Zoho Desk organizes support around Departments with a hierarchical thread structure where Ticket Threads and Ticket Comments are separate sub-objects. We resolve this schema difference during transformation, map ticket status and priority to Zoho Desk's typed picklists, and use Zoho's REST API to ingest conversation history without relying on Zoho's Zwitch tool, which drops tags, inline images, and thread direction metadata. Eva chatbot flows and Desku automations are configuration rather than data — we export them as JSON blueprints and advise customers to rebuild them in Zoho Desk's Macros and Blueprint modules post-migration. CSAT scores migrate as custom ticket fields for Starter-tier customers who lose access to Desku's native survey feature.
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 Desku.io 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.
Desku.io
Ticket
Zoho Desk
Ticket
1:1Desku Tickets map to Zoho Desk Tickets. The primary mapping preserves subject, description, status, priority, assignee (by email lookup), tags (as custom multi-select picklist cf_ticket_tags), and the original created_at timestamp. We set the createdAt timestamp via the Zoho API during ticket insert to preserve historical ordering. Internal notes from Desku map to Zoho Desk Ticket Comments (private = true); public replies map to Ticket Threads.
Desku.io
Conversation
Zoho Desk
Ticket Thread + Ticket Comment
1:manyDesku Conversations within a Ticket split into two Zoho Desk sub-object types: Thread entries where is_public = true become Ticket Threads (visible to customers in the help center); entries where is_internal = true become Ticket Comments (agent-only visibility). Each thread entry preserves the author email, timestamp, and message body including any inline images as ContentDocumentLink attachments.
Desku.io
Contact
Zoho Desk
Contact
1:1Desku Contacts map to Zoho Desk Contacts. We use email as the dedupe key and preserve name, email, phone, company, and all custom contact properties as Zoho custom fields (cf_ prefix). The Contact to Account linkage is resolved after we create the Account record, using the company name from Desku to match or create a corresponding Zoho Account.
Desku.io
Company
Zoho Desk
Account
1:1Desku Contacts store an optional company field. We map this to Zoho Desk Account. Account Name becomes the Account's company name, and we populate Website, Phone, Industry, and Street from the corresponding Desku contact or company field. Account is created before any Contact import so that the Account lookup is satisfied at Contact insert time.
Desku.io
Shared Inbox
Zoho Desk
Department + Custom View
lossyDesku Shared Inboxes group tickets by channel or team. Zoho Desk has no direct inbox object — tickets belong to a Department, and agents see tickets via Custom Views filtered by criteria. We map each Desku Shared Inbox to a Zoho Department, creating the department in Zoho Desk first, then routing imported tickets to that department. Agents are assigned to the department via the department-agent linkage. Custom Views are configured post-migration to replicate inbox filtering logic.
Desku.io
Ticket Tag
Zoho Desk
Custom Multi-Select Picklist (cf_ticket_tags)
lossyDesku Ticket Tags use a flat key-value label model with no hierarchy. Zoho Desk has no native tag system. We create a custom multi-select picklist field cf_ticket_tags on the Ticket module, and all distinct tag values from Desku are added as picklist options during schema setup. Agents then apply tags via the ticket layout. Tag-based routing rules in Desku do not migrate and must be rebuilt as Zoho Desk Workflow rules.
Desku.io
CSAT Survey
Zoho Desk
Custom Field (cf_csat_score)
1:1Desku CSAT scores (available on Team and Business tiers) attach to tickets as a satisfaction rating. Zoho Desk's native Customer Happiness feature is only on Standard and above. For Starter-tier customers or when migrating CSAT data, we create a custom numeric field cf_csat_score on the Ticket module and populate it with the original rating. The survey metadata (respondent email, submission date, comment) maps to custom text fields. Customers on Standard Zoho Desk can alternatively use the native Happiness feature post-migration.
Desku.io
Knowledge Base Article
Zoho Desk
Help Desk (Solutions) Article
1:1Desku Knowledge Base articles map to Zoho Desk Help Desk articles (Solutions). We export article title, content, category, publication status, and section structure. Zoho's assisted migration guide notes that attachments will not be migrated — we flag this explicitly and advise customers to re-upload article attachments (PDFs, images) manually or use Zoho's file hosting within the article editor. Category structure from Desku maps to Zoho Desk article categories.
Desku.io
User / Agent
Zoho Desk
Agent
1:1Desku Agents map to Zoho Desk Agents by email match. We extract agent name, email, role (admin vs agent), and team assignment. Zoho Desk role mapping: Desku admin becomes Zoho Support Administrator; Desku agent becomes Zoho Agent. Light Agent roles in Zoho are assigned if the customer specifies read-only access for certain team members. Zoho's import guide notes that agents receive an invitation email and must accept before appearing in the agent list.
Desku.io
Automations
Zoho Desk
Workflow Rules (exported as JSON)
1:1Desku Automation & Workflow Engine rules are stored as JSON configuration, not records. We export the full rule logic (trigger conditions, actions, delays, branch logic) as a JSON blueprint bundle. We do not import automation rules into Zoho Desk because Zoho's Workflow, Assignment, and Supervise Rules use a different rule schema. The JSON bundle is delivered to the customer with a written recommendation for each automation's Zoho equivalent. Typical rebuild time is 1-4 hours depending on complexity.
Desku.io
Eva Chatbot Flows
Zoho Desk
Blueprint (exported as JSON)
1:1Desku's Eva chatbot conversational flows built in the drag-and-drop builder are platform-specific JSON configuration. We export the full flow definitions (trigger points, decision nodes, response content, integration calls) as a JSON bundle. Zoho Desk does not have a native chatbot flow builder at this tier; the closest Zoho equivalent is Zoho SalesIQ for chatbot functionality, which is a separate product. We recommend rebuilding bot logic manually or evaluating Zoho SalesIQ integration. The JSON bundle serves as a complete functional specification for the rebuild.
Desku.io
Live Chat Widget
Zoho Desk
Widget (reinstall required)
1:1Desku's live chat widget embed code, custom form fields, and branding settings are tied to Desku's infrastructure. We export the widget configuration (branding, form field names, and routing settings) as a JSON bundle. The widget itself cannot be transferred — it must be uninstalled from Desku and the equivalent Zoho Desk web widget or Zoho SalesIQ widget must be installed at the destination URL. We coordinate a same-day cutover with a brief overlap window to prevent message loss during the transition.
Desku.io
Custom Fields
Zoho Desk
Custom Fields (cf_ prefix)
lossyDesku custom input fields on tickets and contacts are exported with their field name, type (text, number, dropdown, date, checkbox), and option values. We pre-create matching custom fields in Zoho Desk with a cf_ prefix on the appropriate module (Ticket or Contact) before data import. Field types are mapped: Desku text to Zoho single-line, Desku textarea to Zoho multi-line, Desku dropdown to Zoho picklist, Desku checkbox to Zoho checkbox. Validation rules on custom fields are disabled during migration to prevent record rejection.
Desku.io
Integrations
Zoho Desk
Webhook / Zoho Marketplace (reconfigure required)
1:1Desku integrates with Shopify, WooCommerce, Facebook, WhatsApp, Instagram, and supports webhooks on Business tier. OAuth tokens, API keys, and webhook subscriptions are stored in Desku's infrastructure and do not transfer. We document each active integration connection (source, trigger, action) during discovery and deliver a written integration inventory. Customers reconfigure each integration in Zoho Desk using Zoho's own connectors or Zoho Marketplace apps. Shopify and WooCommerce connect via Zoho Commerce or webhook-based integration; social channels require Zoho Desk's social media routing configuration.
| Desku.io | Zoho Desk | Compatibility | |
|---|---|---|---|
| Ticket | Ticket1:1 | Fully supported | |
| Conversation | Ticket Thread + Ticket Comment1:many | Fully supported | |
| Contact | Contact1:1 | Fully supported | |
| Company | Account1:1 | Fully supported | |
| Shared Inbox | Department + Custom Viewlossy | Fully supported | |
| Ticket Tag | Custom Multi-Select Picklist (cf_ticket_tags)lossy | Fully supported | |
| CSAT Survey | Custom Field (cf_csat_score)1:1 | Fully supported | |
| Knowledge Base Article | Help Desk (Solutions) Article1:1 | Fully supported | |
| User / Agent | Agent1:1 | Fully supported | |
| Automations | Workflow Rules (exported as JSON)1:1 | Mapping required | |
| Eva Chatbot Flows | Blueprint (exported as JSON)1:1 | Fully supported | |
| Live Chat Widget | Widget (reinstall required)1:1 | Mapping required | |
| Custom Fields | Custom Fields (cf_ prefix)lossy | Mapping required | |
| Integrations | Webhook / Zoho Marketplace (reconfigure required)1:1 | 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.
Desku.io gotchas
Ticket volume cap creates migration billing risk
Rate limits are documented but the link is broken
Automations and chatbot flows are configuration, not data
Widget and channel code must be reinstalled at destination
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
Discovery and Desku tier assessment
We audit the source Desku account across tier (Startup/Team/Business), monthly ticket volume against the current cap, active Shared Inbox count, custom field definitions, Knowledge Base article count with attachment inventory, Eva chatbot flow count and complexity, automation rule count, and integration list. We probe the Desku API with a small test batch to characterise the effective rate limit since the documentation link is broken. The discovery output is a written migration scope including a CSAT availability gap note for any Starter-tier customer, and a Zoho Desk edition recommendation (Free/Express/Standard/Professional) based on the customer's agent count and required features.
Zoho Desk schema provisioning and department design
We pre-create the Zoho Desk schema before any data moves. This includes provisioning custom fields on Ticket and Contact modules (cf_ticket_tags, cf_csat_score, cf_csat_comment, cf_csat_submitted_at, cf_cc_recipients), creating Departments to mirror each Desku Shared Inbox, configuring Custom Views to replicate Desku inbox filtering logic, adding ticket tag values as picklist options, and disabling validation rules that could reject records during import. Schema is deployed into the customer's Zoho Desk portal via the API or manually configured with a provisioning checklist we deliver.
Sample migration and thread-split validation
We run a test migration of 50-100 representative tickets (including tickets with internal notes, public replies, CC recipients, tags, and CSAT scores) into a Zoho Desk staging environment. The customer's support operations lead reviews the thread split (public replies vs internal notes), tag appearance in the custom picklist, CSAT field population, and department assignment. Any mapping corrections — incorrect status mapping, missing custom field types, department routing errors — are documented and applied to the transform scripts before the full migration runs.
Agent provisioning and department assignment
We extract every distinct agent email from Desku and match against Zoho Desk Users by email. Agents are assigned to the Departments mapped from the Desku Shared Inboxes. Zoho Desk requires agents to accept an invitation email before they appear in the agent list — we provide a provisioning checklist for the customer's admin to trigger invitations and follow up on pending accepts before the cutover window. Agents without a matching Zoho account are held in a reconciliation queue.
Full migration in dependency order
We run the production migration in record-dependency order: Departments (first), Agents (validated, matched by email), Accounts (from Desku company data), Contacts (with AccountId resolved), Knowledge Base articles (with attachment gap flagged), Tickets (with createdTime set via API, conversations split into Threads and Comments), Custom Fields on tickets (cf_ticket_tags, CSAT fields), and Integrations documentation bundle (delivered, not migrated). Each phase emits a row-count reconciliation report. Ticket import uses chunked API calls with exponential backoff to respect Zoho's rate limits.
Cutover, delta sync, and automation handoff
We freeze Desku writes during cutover, run a final delta migration of any tickets or contacts modified during the migration window, then switch the live chat widget code and email routing to Zoho Desk. We deliver the Eva chatbot flow JSON bundle and the automation rule JSON bundle with a written recommendation for each Zoho Desk equivalent (Workflow Rules, Blueprint, or Zoho SalesIQ for bot functionality). We support a one-week hypercare window to resolve any post-migration reconciliation issues. We do not rebuild automations or chatbot flows in Zoho Desk as part of the migration scope; this is a separate rebuild engagement.
Platform deep dives
Desku.io
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 Desku.io 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
Desku.io: Stated to exist but documentation link is broken; effective limits must be empirically characterised during discovery.
Data volume sensitivity
Desku.io 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 Desku.io to Zoho Desk migration scoping. Not seeing yours? Book a call.
Walk through your Desku.io 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 Desku.io
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.