When migrating data from a Freshdesk account to Zoho Desk, it's important to seamlessly transfer crucial information such as customer details, ticket history, agent interactions, referenced articles, comments, and attachments. Ensuring an organized migration process is vital to maintain data integrity and operational continuity.
Zwitch, Zoho Desk's built-in migration tool, enables a structured transfer of customer support data from Freshdesk to Zoho Desk. The tool works with backup files exported from Freshdesk, validates them, reshapes the data to fit Zoho Desk, loads it in the correct order, and provides a detailed migration report. Throughout the migration, Zwitch stays connected to Freshdesk over the API to fetch inline images, attachments, and field values.
Availability
Permission Required
Users with the Primary Contact or Support Administrator role can initiate data migration.
Supported Editions
All paid editions of Zoho Desk support migration. The Trial Edition supports migration up to 2 GB of data.
Check Feature Availability and LimitsBefore you start
Account and access requirements
- Don't reset or revoke the API key you submitted. Resetting it in Freshdesk (Profile Settings) revokes the old key and disconnects Zwitch mid-migration.
- Disable any Zoho CRM or Salesforce integration during migration to avoid duplicate contacts and accounts.
- Remove any IP restriction settings that could block access.
Set up your agents first
- If an agent associated with a ticket matches an agent in the backup file and the agent is imported successfully, the ticket will be mapped to the corresponding agent. Otherwise, the ticket will be assigned to the "Unassigned" status.
- Each agent's Zoho Desk email must exactly match their Freshdesk email (tickets are mapped to agents by email), and they need access to the target department.
- If an agent is inactive or the email doesn't match, their tickets are assigned to the Primary Support Administrator.
What gets migrated
Zwitch migrates the following modules and processes them in a specific order to ensure links between records are never broken:
Freshdesk | Zoho Desk | Notes |
Companies | Accounts | Direct mapping |
Users | Agents, Contacts, EndUsers | Freshdesk users are split into the three users types in Zoho Desk |
Tickets | Tickets, Threads, Ticket Comments | Ticket conversations come across too |
Solutions | KB Root Categories, Sections, Articles | Articles keep their inline images and attachments |
What happens during data processing?
- Data format: Freshdesk data is accepted in XML and JSON format.
- Zoho Desk migration:
- Zoho Desk has a migration wizard with a template for Freshdesk data.
- Use Zwitch to submit a Freshdesk backup for validation.
- The wizard extracts data module-wise and makes API calls to Freshdesk.
- File naming: Keep backup file names unchanged as exported from Freshdesk.
- Data deletion:
- Freshdesk backup files processed by the wizard are periodically deleted.
- Records are purged within 30 days of confirmation of migration.
- Freshdesk account maintenance:
- Keep Freshdesk account active until the final migration.
- Maintain the account with sufficient API rate limits for access during migration. The migration might take a minimum of two weeks, so ensure that the request is raised well within the subscription period.
Note:
- All Freshdesk requesters/contacts arrive as EndUsers in Zoho Desk. If you don't want this, leave the EndUsers module out of the submission.
- Selecting Tickets automatically includes Threads, Ticket Comments, and Attachments.
- Deleted contacts are not included in the FreshDesk backup files. Hence tickets associated to the deleted contacts will not be migrated.
- Zwitch migrates everything into a single department (the default, or one you choose). Splitting data across multiple departments in one pass is not supported.
- A migration can be cancelled only while its status is "Submitted in Queue." Once it starts processing, it can't be cancelled.
Data migration rule
- Ticket identification:
- Tickets can be filtered with Freshdesk groups and products. Users can also skip irrelevant tickets and only migrate the selected ones into Desk.
- Freshdesk ticket IDs are preserved in the field 'display-id'.
- Custom fields in Desk:
- Desk custom field names may vary slightly, but types and values remain unchanged.
- Custom fields are created dynamically during migration, with types predicted from sampled data.
- Custom fields are subject to subscription-based limits and predefined regex pattern checks.
- Ticket notes and threads:
- Freshdesk ticket notes become Threads and Comments based on their privacy flag. Private notes turn into ticket comments, while public ones become threads.
- Channel tagging:
- Threads with an email address are mapped to the Email channel. If no channel or email address is available, the thread is mapped to the 'CUSTOMERPORTAL' channel.
Quick summary: a concise breakdown of who will appear as the author for each message type after migration
Where did the message happen? | Who usually appears as the author? |
Incoming email | Customer (or a mail alias if the email addresses don’t match). |
Outgoing email | Support rep (or the Admin doing the import if the agent is missing) |
Incoming portal message | Customer |
Outgoing portal message | Support rep (These will appear as Emails post-import). |
Residual migration
Migration runs in two phases, roughly two weeks apart. This ensures that anything created in Freshdesk in the meantime and anything that needs another try or additional correction is picked up in the second phase.
Note:
Failed records come back as a file, so user can correct them and re-migrate. Anything still unresolved is retried automatically in the second phase.
After migration : Finding data
Zwitch tags migrated records so you can spot them easily:
Record Type | How to Identify It |
Tickets | Original Freshdesk ID stored in the FreshDesk-Id field |
Ticket Status | Original Freshdesk status is maintained. |
Contacts & Accounts | An Is Migrated checkbox set to true |
KB Articles | Tagged ZohoDesk Migrated |
Custom fields
Migrated custom fields land in the Unused Fields section of your department. Drag them onto the layout (Setup > Layouts and Fields) to surface their data.
Key facts at a glance
Item | Detail |
Who can start it | Primary Contact or Support Administrator |
Supported editions | All paid editions; Trial Edition up to 2 GB |
Upload limits | Each backup a zip under 5 GB; up to 5 files |
Source format | XML or JSON |
Department | Multi-department migration is supported |
Error-log window | Respond within 2 weeks |
Cancellation | Only while status = "Submitted in Queue" |
Data retention | Customer-uploaded backup files and parsed migration data files are purged within 30 days of migration confirmation.
|