Helpdesk migration

Migrate from Frappe Helpdesk to Intercom

Field-level mapping, validation, and rollback between Frappe Helpdesk and Intercom. We move data and schema; workflows are rebuilt natively in Intercom.

Frappe Helpdesk logo

Frappe Helpdesk

Source

Intercom

Destination

Intercom logo

Compatibility

92%

11 of 12

objects map 1:1 between Frappe Helpdesk and Intercom.

Complexity

CModerate

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Frappe Helpdesk to Intercom shifts from a traditional ticketing workflow to a conversation-first messaging model. Frappe Helpdesk stores tickets as HD Ticket doctypes with linked Communication records in PostgreSQL; Intercom represents the same data as Contacts linked to Conversations with a threaded Conversation Part history. We resolve that structural difference by creating Intercom Contacts before any Conversation import, mapping SLA deadline fields to Intercom SLA assignments, and threading every Communication record from Frappe into the correct Conversation Part sequence. Custom fields on HD Ticket require explicit HD Ticket Template configuration in the source, and Intercom Custom Attributes serve a similar role on the destination side. Assignment Rules and SLA triggers are not migratable as automation code; we deliver a written inventory for the customer to rebuild using Intercom's Rules and SLA Builder. Knowledge base articles map to Intercom Articles with collection hierarchy preserved, though view counts and article feedback ratings do not transfer.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Frappe Helpdesk logo

Frappe Helpdesk

What's pushing teams away

  • The agent count and ticket volume that Frappe Helpdesk was designed for caps out around mid-market; large enterprise teams hit scaling limits in self-hosted deployments.
  • Custom field rendering requires manual template configuration in HD Ticket Template, which frustrates non-technical admins who expect standard form behavior.
  • Rate limiting on the Frappe Framework is based on cumulative request time rather than request count, making API-heavy automations unpredictable without load testing.
  • Workflow resets after minor version upgrades, forcing admins to reconfigure assignment rules and triggers after routine system maintenance.
  • Limited third-party integrations outside the Frappe ecosystem means teams using Salesforce or Zendesk on other functions end up maintaining parallel tooling.

Choosing

Intercom logo

Intercom

What's pulling them in

  • Instant chat and message threading on websites and apps gives support teams a single inbox without context-switching, according to reviewers on Capterra and G2 who highlight fast response times as a primary benefit.
  • Fin AI handles repetitive inbound queries automatically, reducing agent workload measurably — G2 reviewers report fewer escalations and faster first-response times once Fin is configured.
  • Automation workflows (Outbound, Operator, and custom bots) allow teams to qualify leads and route tickets without manual intervention, appealing to growth-stage SaaS companies managing high ticket volumes.
  • Help center articles and self-service deflection are natively integrated, so knowledge base content and chat conversations live in the same workspace, simplifying reporting.
  • Multi-channel support (live chat, email, SMS, WhatsApp, Phone) consolidates customer touchpoints into one inbox, reducing the operational overhead of managing separate tools.

Object mapping

How Frappe Helpdesk objects map to Intercom

Each row shows how a Frappe Helpdesk object lands in Intercom, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Frappe Helpdesk

HD Ticket

maps to

Intercom

Conversation / Ticket

1:1
Fully supported

Frappe HD Ticket records map to Intercom Conversations. The ticket subject becomes the Conversation title, ticket status (Open, Pending, Resolved, Closed) maps to Intercom's open, closed, and snoozed states, and priority maps to a Conversation priority attribute. Creation and modification timestamps transfer as conversation metadata. The Intercom conversation must reference an existing Contact, so we create all HD Customer records before importing tickets to satisfy the Contact requirement.

Frappe Helpdesk

HD Customer

maps to

Intercom

Contact

1:1
Fully supported

Frappe HD Customer records map to Intercom Contacts. Name, email, phone, and organization fields transfer directly. Custom fields on HD Customer require explicit mapping to Intercom Custom Attributes, which must be pre-created in Intercom as text, number, date, list, or boolean types before migration. Any custom field that references another HD Ticket or HD Customer doctype cannot map directly and is flagged as a lookup resolution issue during scoping.

Frappe Helpdesk

Communication

maps to

Intercom

Conversation Part

1:1
Fully supported

Every Communication record linked to an HD Ticket becomes an Intercom Conversation Part. We preserve chronological order by setting the Conversation Part timestamp to the original Communication creation date. Agent messages and customer messages are distinguished by the communication author type. Attachments on Communication records attach to the corresponding Conversation Part as Intercom attachments, subject to Intercom's supported file type list (images, PDFs, text files).

Frappe Helpdesk

Team

maps to

Intercom

Team

1:1
Fully supported

Frappe Helpdesk Teams map directly to Intercom Teams. Team name, email inbox routing rules, and team-level SLA assignments transfer as configuration records. Intercom Teams must exist before agent assignment can resolve, so we create Teams before Agents during migration.

Frappe Helpdesk

Agent

maps to

Intercom

Teammate / Admin

1:1
Fully supported

Frappe Helpdesk agent records (linked to Frappe User accounts) map to Intercom Teammates. Agent roles and permissions are not directly transferable because Intercom uses a simpler admin and agent role model. We resolve agents by matching the Frappe User email to the Intercom Teammate email address. Any Frappe Agent without a corresponding Intercom Teammate is held in a reconciliation queue for the customer's admin to provision before ticket import resumes.

Frappe Helpdesk

SLA Policy

maps to

Intercom

SLA

1:1
Fully supported

Frappe Helpdesk SLA Policies with response and resolution time windows map to Intercom SLA definitions. Intercom SLAs are attached to Inbox Teams rather than individual tickets, so we map each Frappe SLA Policy to the Intercom Team that handles the corresponding ticket priority. SLA breach timestamps from Frappe do not transfer as historical breach records; Intercom calculates SLA adherence from the migration date forward.

Frappe Helpdesk

Assignment Rule

maps to

Intercom

Rule (rebuild required)

lossy
Fully supported

Frappe Helpdesk Assignment Rules with keyword, priority, and customer tier conditions have no direct Intercom equivalent. Intercom's Rules engine handles routing, assignment, and inbox routing but uses a different condition syntax. We export all Assignment Rules as a written inventory with their trigger conditions, action assignments, and priority order, and the customer's Intercom admin rebuilds them using Intercom Rules after migration.

Frappe Helpdesk

Knowledge Base Article

maps to

Intercom

Article

1:1
Fully supported

Frappe Helpdesk KB Articles with category hierarchy map to Intercom Articles organized in Collections. Article title, body content in HTML, and category assignment transfer. Article view counts and feedback ratings do not transfer because Intercom does not support importing these metrics; Intercom tracks them natively from the migration date forward.

Frappe Helpdesk

Canned Response

maps to

Intercom

Saved Reply

1:1
Fully supported

Frappe Helpdesk canned responses (pre-written templates with subject and body) map to Intercom Saved Replies as text blobs. Any dynamic variable substitution syntax such as {{ticket.customer_name}} in Frappe does not transfer and must be reconfigured in Intercom using Intercom's {{requester.name}} and {{conversation.id}} variable syntax.

Frappe Helpdesk

Custom Field (HD Ticket)

maps to

Intercom

Custom Attribute (Conversation)

1:1
Fully supported

Custom fields on HD Ticket require two-step handling. First, we map the field definitions to Intercom Custom Attributes on the Conversation object, which must be pre-created in Intercom with matching data types (text, number, date, list, boolean). Second, we map the field values from each ticket to the corresponding Custom Attribute. Note that custom fields on HD Ticket require explicit HD Ticket Template configuration in Frappe; if a field was not added to the Template, it may not have visible data even though the field exists in the database. We flag these during discovery and advise the customer to check Template configuration before migration.

Frappe Helpdesk

Tag

maps to

Intercom

Tag

1:1
Fully supported

Tags on HD Tickets map to Intercom Tags. Tag names transfer as strings. Intercom Tags are applied to both Contacts and Conversations, so a tag used for ticket classification appears on both the migrated Conversation and the associated Contact in Intercom.

Frappe Helpdesk

Attachment

maps to

Intercom

Attachment

1:1
Fully supported

Ticket and Communication attachments in Frappe are stored in the private files directory or as File doctypes. Intercom supports image, PDF, and text file attachments on Conversations and Conversation Parts. We re-download accessible file attachments and attach them to the corresponding Intercom Conversation Part. Private files that require Frappe authentication may be inaccessible; we flag these during the inventory phase and advise the customer to temporarily make them public or export them manually.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Frappe Helpdesk logo

Frappe Helpdesk gotchas

Medium

HD Ticket custom fields require HD Ticket Template configuration

Medium

Workflow resets after Frappe version upgrades

High

Errors when Helpdesk is installed on existing ERPNext + HR sites

Low

Rate limiting is time-based, not request-count based

Low

Private file attachments require authentication to re-download

Intercom logo

Intercom gotchas

High

S3 JSON export omits conversation transcripts

High

Workspace isolation prevents workflow migration

Medium

Fin AI resolution fees compound with automation success

Medium

Two-year conversation history limit on historical export

Low

Private app rate limits share workspace quota

Pair-specific challenges

  • HD Ticket custom fields require HD Ticket Template to render

    Custom fields on HD Ticket in Frappe Helpdesk do not automatically appear in the agent form view. They must be explicitly added to the HD Ticket Template doctype. This means a custom field can exist in the database with values on records but remain invisible to agents who are looking at the form view. During migration scoping, we check whether the customer's HD Ticket Template includes all active custom fields. Any field missing from the Template has its data migrated but will not display in Frappe before export; we advise the customer to verify Template configuration before extraction begins.

  • Assignment Rules and SLA triggers reset after Frappe version upgrades

    Frappe Helpdesk Assignment Rules, SLA triggers, and workflow configurations have been observed to reset to default states after routine Frappe Framework version upgrades. This is a documented behavior in the Frappe ecosystem. Before migration begins, we export all active Assignment Rules and SLA trigger definitions as configuration records. Post-migration, these must be rebuilt in Intercom using the Rules engine and SLA Builder. We deliver a written inventory of every automation requiring rebuild so the customer's admin can address it during the stabilization window.

  • Site configuration conflicts with ERPNext and HR modules cause invisible tickets

    GitHub issue frappe/helpdesk #3003 documents a scenario where installing Helpdesk on a site that already has ERPNext and HR modules causes tickets and customers to become invisible in the agent view. This is a site-configuration conflict in Frappe, not a data integrity issue. If the source Frappe Helpdesk instance exhibits this problem, we must resolve the site conflict before exporting data, or use a direct PostgreSQL connection to extract data at the database layer, bypassing the Frappe application entirely. We assess site health during discovery and flag this risk before extraction.

  • Intercom SLA calculation starts fresh at migration date

    Intercom calculates SLA compliance from the moment an SLA definition is attached to an inbox or team. Historical SLA breach timestamps and resolution times from Frappe Helpdesk do not transfer as historical breach records into Intercom. Agents and admins will see SLA countdown timers on new conversations but not on existing historical conversations migrated from Frappe. SLA reporting in Intercom will show compliance data from migration date forward only.

  • Private file attachments may require temporary public access

    Frappe Helpdesk stores some file attachments as private files that require an authenticated Frappe session to re-download. During migration, we may be unable to fetch private files without the site's session cookie or API access token. We flag inaccessible attachments during the inventory phase and advise the customer to temporarily switch file visibility to public or export them manually alongside the structured data export. Intercom's supported attachment types (images, PDFs, text files) apply to what can be attached post-migration.

Migration approach

Six steps for a successful Frappe Helpdesk to Intercom data migration

  1. Discovery and data inventory

    We audit the source Frappe Helpdesk instance across PostgreSQL DocTypes including HD Ticket, HD Customer, Communication, Team, Agent, SLA Policy, Assignment Rule, KB Article, Canned Response, Tag, and File records. We identify the HD Ticket Template configuration to determine which custom fields are actually rendered. We assess site health for the ERPNext + HR module conflict (GitHub #3003) and document whether a direct database connection is required. The discovery output is a written scope with record counts per object, a list of custom fields requiring HD Ticket Template verification, and a flag for any inaccessible private attachments.

  2. Intercom workspace preparation

    We create the Intercom workspace structure before migration: Teams (mirroring Frappe Teams), SLA definitions (mirroring Frappe SLA Policies by priority and team), and Custom Attributes on Contact and Conversation (pre-created for every custom field identified in discovery). We configure Intercom Inbox routing rules as placeholders and document them as pending the Assignment Rule rebuild phase. This phase validates that the destination workspace is ready to receive data in the correct dependency order.

  3. Contact and conversation pre-creation order

    Intercom requires Contacts to exist before Conversations can reference them. We extract all HD Customer records first, transform them into Intercom Contacts (resolving organization references and custom field values), and create them via the Intercom Contacts API. Only after Contact creation is confirmed do we extract HD Ticket records and their linked Communication records, creating Intercom Conversations and threading each Communication as a Conversation Part with correct timestamp ordering.

  4. Knowledge base and configuration migration

    We migrate KB Articles as Intercom Articles organized in Collections, preserving the category hierarchy from Frappe. Article view counts and feedback ratings are not transferred. Canned Responses migrate as Saved Replies in plain text. We export a written inventory of all Assignment Rules and SLA trigger configurations for the customer to rebuild in Intercom Rules and SLA Builder post-migration.

  5. Sandbox validation and reconciliation

    We run a full migration into an Intercom sandbox or a temporary workspace using production-like data volume. The customer's support operations lead reconciles record counts (Contacts, Conversations, Conversation Parts, Articles) against the Frappe source, spot-checks 25-50 random tickets for thread completeness and timestamp ordering, and verifies that SLA assignments and team routing resolve correctly. Any mapping corrections happen here before production migration begins.

  6. Production migration, cutover, and rebuild handoff

    We freeze Frappe Helpdesk writes during the cutover window, run a final delta migration of any records modified during the migration period, then enable Intercom as the system of record. We deliver the Assignment Rule and SLA trigger inventory document to the customer's Intercom admin. We do not rebuild Frappe Assignment Rules as Intercom Rules inside the migration scope; that is a separate configuration task for the customer's team. We support a five-day hypercare window to resolve data reconciliation issues raised during the first week of live Intercom operations.

Platform deep dives

Context on both ends of the pair

Frappe Helpdesk logo

Frappe Helpdesk

Source

Strengths

  • Open-source with AGPL-3.0 license, no per-agent or per-ticket billing
  • Deep ERPNext integration connecting support tickets to financial transactions
  • Full SLA configuration with response and resolution deadline tracking
  • Customizable agent portal and customer portal with white-label branding
  • Built-in knowledge base, canned responses, and customer rating collection

Weaknesses

  • Smaller community and plugin ecosystem compared to Zendesk or Freshdesk
  • Self-hosted deployments require server administration and backup management
  • API documentation is sparse; integrations often require custom Frappe scripting
  • Version upgrade path can break custom apps and custom field configurations
  • Limited native AI or advanced automation capabilities compared to newer SaaS competitors
Intercom logo

Intercom

Destination

Strengths

  • Integrated AI agent (Fin) for automated resolution with per-resolution billing that rewards high automation rates.
  • Multi-channel inbox consolidating live chat, email, SMS, WhatsApp, and Phone into a single threaded view.
  • Native help center with articles, collections, and self-service deflection capabilities.
  • Workflow automation for routing, qualification, and proactive outbound messaging across channels.
  • Strong API ecosystem with 10,000 req/min rate limits for private apps enabling high-throughput migration pipelines.

Weaknesses

  • Pricing model compounds with seat count, AI resolution fees, channel costs, and multiple add-ons, making total cost hard to predict.
  • Workspace-level isolation prevents moving workflows or content between environments, requiring manual rebuilds.
  • S3 JSON export deliberately excludes conversation transcripts, necessitating REST API calls for full message history.
  • Outages are reported as frequent enough to be a concern for always-on support operations.
  • Setup complexity means teams often require internal guidance or professional services to configure bots and automation correctly.

Complexity grading

How hard is this migration?

Moderate Helpdesk migration. 4 of 7 objects need a mapping; the rest are 1:1.

C

Overall complexity

Moderate migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Frappe Helpdesk and Intercom.

  • Object compatibility

    C

    4 of 7 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Frappe Helpdesk: Fixed-window rate limiting based on cumulative request time; no public per-endpoint limit documented.

  • Data volume sensitivity

    B

    Frappe Helpdesk doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Frappe Helpdesk to Intercom migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Frappe Helpdesk to Intercom data migrations

Answers to the questions buyers ask most during Frappe Helpdesk to Intercom migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Frappe Helpdesk to Intercom migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between two and four weeks for accounts under 10,000 tickets and 5,000 contacts with a standard set of custom fields and one or two SLA policies. Migrations with complex custom field schemas, multiple SLA policies, large knowledge base hierarchies (over 500 articles), or high-volume conversation threads (over 50,000 communication records) extend to six to ten weeks because of custom attribute provisioning, thread ordering validation, and knowledge base hierarchy reconstruction.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Frappe Helpdesk.
Land in Intercom, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day