
Making the move from Enchant to Freshdesk is an exciting step for any support team looking to scale their operations.
While both platforms offer robust shared inbox features, their underlying data structures have some unique differences that you need to navigate.
This guide will walk you through the technical journey of moving your data while ensuring your historical context remains perfectly intact.
Define your migration scope
Before you write a single line of code, you must decide what travels through the digital pipeline and what requires a human touch.
Most of your core data will be migrated using the API because of the sheer volume of records. This includes your agents, your entire customer database, the structure of your inboxes, and the full history of tickets, including all replies, notes, and attachments.
Some elements are better suited for manual configuration to ensure they work exactly as intended in their new environment.
You will need to manually set up your business hours, service level agreements, and complex automation workflows. Additionally, Enchant handles archived tickets differently from Freshdesk.
For your migration scope, you should plan to move archived records into a closed status within Freshdesk. This keeps your historical data accessible for reporting without cluttering your active ticket views.
Prepare Freshdesk for data import
Success in data migration is all about preparation. You cannot move data into a system that isn't ready to receive it. Start by rebuilding your custom data models.
If you used custom fields in Enchant to track order numbers or specific product versions, you must create these as Ticket Fields or Contact Fields in Freshdesk before starting the import.
Next, you need to establish your organizational framework. Set up your Roles to define what your team can see and do. If you plan to use advanced routing, configure your Skills as well.
It is also vital to define your Business Hours and SLA Policies at this stage. Because Freshdesk calculates due dates upon ticket creation, having these rules in place ensures that your migrated tickets reflect the correct urgency and timing.
Migrate objects
The order in which you move your data is the most critical part of this process. If you move a ticket before its assigned agent exists, the association will break.
First, migrate your Inboxes by creating them as Groups in Freshdesk. These act as the primary containers for your team's work.
Once the Groups are ready, you can move your Users and set them up as Agents. During this step, you will assign your agents to the groups you just created.
Third, you will move your Customers into the Freshdesk Contact model. This is where you must be careful. Enchant separates the Customer record from their individual contact identifiers, but Freshdesk combines these into a single object.
You will need to bundle all associated emails and phone numbers from an Enchant customer record into the primary email, phone, and other email attributes in Freshdesk.
Fourth, it is time for the Tickets. As you create these, you will map Enchant labels to the Freshdesk tags array.
You will also need a function to translate Enchant's text-based states like open or hold into Freshdesk's numeric status values. Fifth, migrate your Messages as Conversations. This includes all the back-and-forth replies and the internal notes that give your team context.
Finally, handle your Attachments. Since these are often encoded in Enchant, you must ensure your migration script retrieves the file and then uploads it to the corresponding Freshdesk ticket or reply using a specific multipart form format.
Post Migration Configuration
Once the data is sitting comfortably in Freshdesk, you need to turn the lights on. This is when you rebuild your workflows.
Start with your automation rules, including those that trigger on ticket creation, those that respond to ticket updates, and those that run on an hourly basis.
You should also take this time to recreate your Scenario Automations. These are the one click macros that help your agents handle repetitive tasks quickly.
If you use canned responses, you can bulk import your templates into folders now that the rest of your data structure is stable.
Lastly, reconfigure your satisfaction surveys so you can continue measuring customer happiness from day one.
Insider Secrets
There are nuances to this migration that only become clear once you are deep in the technical details.
One of the most important things to know is how to handle snoozed tickets. Enchant has a specific state for this, but in Freshdesk, the best workaround is to map these to the pending status. This ensures they don't count against your active response SLAs but remain visible to your agents.
Another secret involves rate limits. Freshdesk applies limits on a per-minute basis depending on your plan.
To avoid errors, you should queue your requests and implement a retry mechanism that looks for specific header values telling you exactly how many seconds to wait. If you are moving a large volume of data, you might even consider requesting a temporary rate limit increase to speed up the process.
Be aware that Freshdesk combines requester names and contact details into the same API call during ticket creation.
If a contact doesn't exist when you create a ticket, Freshdesk will automatically create one. However, to maintain data integrity, it is always better to create the Contact first so you can control exactly how the deduplication of email addresses is handled.
Summary
Migrating from Enchant to Freshdesk is a logical progression for a growing support team. By following a strict sequence, starting with groups and agents before moving to contacts and tickets, you ensure that every piece of data finds its proper home.
While the API handles the heavy lifting, your manual configurations of workflows and SLAs will provide the finishing touches that make the platform feel like your own.
With your data consolidated and your automations rebuilt, your team will be ready to provide a higher level of service than ever before.
If you’d rather focus on your revenue instead of wrestling with mapping sheets and pagination loops, ClonePartner can handle the full migration for you. Every project gets a dedicated engineer who understands the nuances of both APIs and ensures zero downtime.