Helpdesk migration
Field-level mapping, validation, and rollback between Tiflux and Freshdesk. We move data and schema; workflows are rebuilt natively in Freshdesk.
Tiflux
Source
Freshdesk
Destination
Compatibility
8 of 10
objects map 1:1 between Tiflux and Freshdesk.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Tiflux to Freshdesk is a language-first and schema-second migration. Tiflux uses Portuguese labels throughout its data model, including Entidades (custom entity groups), apontamento de horas (time entries), and ticket filho (child tickets) relationships that must be resolved before records land in Freshdesk. We extract from the Tiflux v2 API exclusively, map Portuguese field names to Freshdesk field names during the transform phase, and sequence the migration in dependency order: Entidades first so that ticket records can reference them, then Clients and Contacts, then Tickets with parent-child links resolved, then Knowledge Base articles. Freshdesk's per-minute API rate limits (200 on Growth, 400 on Pro, 700 on Enterprise) govern throughput during import. Automations, chatbot flows, and SLA rule configurations do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Freshdesk's automation builder.
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 Tiflux object lands in Freshdesk, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Tiflux
Ticket
Freshdesk
Ticket
1:1Tiflux Tickets map 1:1 to Freshdesk Tickets. We translate Portuguese field labels (prioridade, status, categoria) to Freshdesk equivalents (priority, status, group). Requester info maps to the Freshdesk requester field, client linkage maps to the company field if the client exists in Freshdesk, and SLA timer status is noted in a custom field sla_timer_state__c for the customer's admin to reconfigure as Freshdesk SLA policies post-migration. Child ticket relationships (ticket filho) are resolved by detecting all parent_id references during the data audit, importing parent tickets first, then linking child tickets via the Freshdesk conversation or linked ticket feature.
Tiflux
Client (Cliente)
Freshdesk
Company
1:1Tiflux Client records (Clientes) map to Freshdesk Companies. The Tiflux client ID is preserved in a custom field tiflux_client_id__c on the Freshdesk Company for reconciliation. Client annotations (anotações), resource group associations, and contract links are exported as notes on the Company record because Freshdesk Companies do not have a native annotations or resource-group field. Client-level knowledge base associations migrate as Freshdesk Company custom fields.
Tiflux
Contact (Contato)
Freshdesk
Contact
1:1Tiflux Contact records map to Freshdesk Contacts. Name, email, phone, and extension fields migrate directly. Tiflux Contact IDs are preserved in freshdesk_contact.tiflux_id__c for reconciliation. Where Tiflux uses a unified contact model with role tagging (tipo_contato: técnico, solicitante, fiscal), we map these to Freshdesk Contact custom fields because Freshdesk's native contact model does not include a role attribute by default.
Tiflux
Contract (Contrato)
Freshdesk
Custom Object: Contract
lossyTiflux Contracts link Clients to service agreements and govern SLA parameters. Freshdesk does not have a native Contract object, so we create a Freshdesk Custom Object named Contract using the Custom Objects API. Contract attributes (hours included, billing terms, renewal date, SLA tier) migrate as Custom Object fields. Each Contract Custom Object is associated to the corresponding Client Company via a Freshdesk relationship. The customer's admin defines the relationship type during scoping.
Tiflux
Custom Entity (Entidade)
Freshdesk
Custom Object
lossyTiflux Entidades are customer-defined custom field groups attached to tickets, clients, or other objects. Each Entidade type discovered during the data audit is pre-created as a Freshdesk Custom Object before any ticket import begins. The migration sequence is: Entidade types and schemas first, then Entidade data records, then tickets that reference them. If an Entidade references another Entidade, we build the dependency graph and import in topological order. This sequencing is required because Freshdesk enforces referential integrity on Custom Object relationships during import.
Tiflux
Knowledge Base (Base de Conhecimento)
Freshdesk
Solution Article
1:1Tiflux Knowledge Base articles map to Freshdesk Solutions. Article content, categorization, and client associations migrate. Tiflux article visibility rules (público, interno, cliente específico) map to Freshdesk article visibility settings (published, draft, internal). Category structure migrates to Freshdesk Categories. Article URLs change after migration to Freshdesk; we recommend setting up 301 redirects post-migration for SEO continuity. Multilingual article versions migrate as separate Freshdesk articles if the destination is configured for multilingual support.
Tiflux
User (Usuário)
Freshdesk
Agent
1:1Tiflux User records (name, email, role, permission group membership) map to Freshdesk Agent accounts. We resolve Tiflux users by email against Freshdesk Agent provisioning. Any Tiflux user without a matching Freshdesk Agent account is placed in a reconciliation queue for the customer's admin to provision before record import resumes. Tiflux permission groups do not map 1:1 to Freshdesk Agent groups, so we map the most granular role assignment and flag permission group differences in the handoff document.
Tiflux
Time Entry (Apontamento)
Freshdesk
Time Entry
1:1Tiflux apontamento de horas records (hours logged against a ticket, with technician, date, duration, and description) map to Freshdesk Time Entries attached to the corresponding Ticket. We resolve the parent ticket reference, the agent who logged the time, and the original timestamp during import. If Freshdesk Time Entry functionality is not enabled on the customer's plan, we note this as a configuration step in the handoff document.
Tiflux
Group (Grupo)
Freshdesk
Group
1:1Tiflux Groups (Grupos) that manage resource allocation and permission scoping map to Freshdesk Groups. Group membership (agents assigned to groups) migrates to Freshdesk Group membership. Destination permission models vary significantly from Tiflux's permission group model, so we map group names and flag permission scope differences in the handoff document for the customer's admin to resolve.
Tiflux
Attachment (Arquivo)
Freshdesk
Attachment
1:1Files attached to Tiflux tickets at creation or within conversation threads migrate to Freshdesk Ticket Attachments. We export attachment URLs and metadata from Tiflux and upload to Freshdesk during the ticket conversation phase. Locally hosted files transfer as attachments if the destination supports the same format. Inline images in Knowledge Base articles transfer as separate attachment records linked to the article. Video file references (YouTube, Vimeo) migrate as URL links rather than embedded files.
| Tiflux | Freshdesk | Compatibility | |
|---|---|---|---|
| Ticket | Ticket1:1 | Fully supported | |
| Client (Cliente) | Company1:1 | Fully supported | |
| Contact (Contato) | Contact1:1 | Fully supported | |
| Contract (Contrato) | Custom Object: Contractlossy | Fully supported | |
| Custom Entity (Entidade) | Custom Objectlossy | Fully supported | |
| Knowledge Base (Base de Conhecimento) | Solution Article1:1 | Mapping required | |
| User (Usuário) | Agent1:1 | Fully supported | |
| Time Entry (Apontamento) | Time Entry1:1 | Fully supported | |
| Group (Grupo) | Group1:1 | Fully supported | |
| Attachment (Arquivo) | Attachment1: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.
Tiflux gotchas
API v1 is discontinued; only v2 is active
API rate limit of 120 requests per minute per user license
Entidades require pre-existing IDs to link ticket records correctly
Child ticket and ticket grouping dependencies must be sequenced
Freshdesk gotchas
API access is blocked on the free plan
Per-minute rate limits are account-wide and endpoint-specific
Multi-channel source types do not map 1:1 to all destinations
Custom objects created in-product cannot be accessed by other apps
Contact import requires at least 10 existing tickets in the account
Pair-specific challenges
Migration approach
Discovery and API pre-flight
We audit the source Tiflux account via the v2 API across all object types: Tickets, Clients, Contacts, Contracts, Entidades, Knowledge Base articles, Users, Groups, and time entries. We verify API reachability and confirm only v2 endpoints are active. We identify Entidade types, child ticket hierarchies, attachment volume, and any multilingual Knowledge Base content. The discovery output is a written migration scope document with record counts per object type, Entidade schema inventory, and a recommendation on Freshdesk plan tier based on data volume and API rate limit requirements.
Freshdesk schema preparation and Entidade pre-creation
We provision the target Freshdesk schema. This includes creating Custom Objects for each Tiflux Entidade type discovered during discovery, defining custom fields on Tickets, Companies, and Contacts to carry Tiflux IDs and original timestamps, configuring Group structure to mirror Tiflux Grupos, and setting up Freshdesk SLA policies based on the Tiflux SLA timer configuration. Schema deployment happens in a Freshdesk sandbox or trial environment first for validation before production migration begins.
Record import in dependency order
We run the migration in record-dependency order: Freshdesk Agents first (to satisfy OwnerId references), Companies (from Tiflux Clients), Contacts (linked to Companies), Custom Object records (Entidade data), then Tickets. Child tickets are held in a dependency queue and imported after their parent tickets are confirmed in Freshdesk. Knowledge Base articles import last because they may reference Company or Contact data. Each phase emits a row-count reconciliation report before the next phase begins. We throttle requests to stay within the Tiflux v2 rate limit of 120 requests per minute per licensed user and within the destination Freshdesk rate limit (200 on Growth, 400 on Pro, 700 on Enterprise).
Attachment and time entry import
We migrate ticket attachments during the ticket conversation phase, uploading files to Freshdesk in the same order as the ticket conversations they belong to. Apontamento de horas (time entries) import as Freshdesk Time Entries linked to the migrated tickets, with the original technician, date, duration, and description preserved. If the customer's Freshdesk plan does not include Time Entry functionality, we flag this as a configuration step and document the time entry data in a CSV export for manual entry or custom app setup.
Validation, timestamp reconciliation, and automation inventory
We reconcile record counts against the Tiflux export totals for all object types. We spot-check 20-30 records per object for field-level accuracy, verifying that Portuguese field values translated correctly to Freshdesk equivalents. We confirm that original Tiflux created_at and updated_at timestamps are preserved in custom fields. We deliver the automation and chatbot flow inventory document to the customer's admin team for rebuild in Freshdesk's scenario automation builder. We do not rebuild automations as part of the migration scope.
Cutover and handoff
We freeze Tiflux writes during cutover and run a final delta migration of any records modified during the migration window. We enable Freshdesk as the system of record and deliver the final reconciliation report with record counts, any unmatched records in the reconciliation queue, and a list of post-migration steps for the customer's admin (enabling SLA policies, rebuilding automations, configuring Freshdesk Time Entries, setting up 301 redirects for Knowledge Base articles). We support a five-business-day hypercare window where we resolve any data quality issues raised during the first week of Freshdesk production use.
Platform deep dives
Tiflux
Source
Strengths
Weaknesses
Freshdesk
Destination
Strengths
Weaknesses
Complexity grading
Standard Helpdesk migration. All 7 core objects map 1:1 between Tiflux and Freshdesk.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Tiflux and Freshdesk.
Object compatibility
All 7 core objects map 1:1 between Tiflux and Freshdesk.
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
Tiflux: 120 requests per minute per licensed user.
Data volume sensitivity
Tiflux 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 Tiflux to Freshdesk migration scoping. Not seeing yours? Book a call.
Walk through your Tiflux to Freshdesk migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Tiflux
Other ways to arrive at Freshdesk
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.