Helpdesk migration
Field-level mapping, validation, and rollback between OTRS and Intercom. We move data and schema; workflows are rebuilt natively in Intercom.
OTRS
Source
Intercom
Destination
Compatibility
6 of 12
objects map 1:1 between OTRS and Intercom.
Complexity
BStandard
Timeline
2-4 weeks
Overview
OTRS and Intercom operate on fundamentally different service-desk models. OTRS organizes work around Tickets, Queues, SLA definitions, and optional Process Management workflows in a normalized MySQL or PostgreSQL schema. Intercom organizes work around Conversations threaded against Contacts in a flat, API-driven data model without queues, SLA objects, or CMDB records. We map OTRS Tickets directly to Intercom Conversations, map OTRS Queue assignments to Intercom Inbox routing, preserve OTRS article history as Intercom conversation parts, and carry OTRS SLA escalation thresholds as metadata tags on each conversation. Dynamic Fields from OTRS migrate as custom attributes on Intercom Contacts or as conversation metadata. OTRS Process Management XML workflows and Configuration Item (CMDB) records do not migrate as code or structured data; we deliver a written inventory of each for the customer's admin to rebuild in Intercom's Workflow Builder or as custom attributes. Intercom's API enforces a 1,000 request per minute rate limit distributed as 166 operations per 10-second window, which governs our batch chunking strategy during import.
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 OTRS 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.
OTRS
Ticket
Intercom
Conversation
1:1OTRS Tickets map directly to Intercom Conversations. We extract ticket title as conversation subject, ticket state (open, pending, closed) as conversation state, and queue assignment as Inbox routing. Article history migrates as conversation parts in chronological order with sender type preserved (customer, agent, or system). Closed tickets migrate with their full article history; open tickets migrate with a delta run at cutover time. OTRS ticket priority maps to a custom priority attribute on the conversation.
OTRS
Article
Intercom
Conversation Part
1:manyOTRS Articles (emails, notes, external replies) map to Intercom Conversation Parts. Each article body migrates as a part with content-type preserved (plain text or HTML, converted to Intercom's markdown-equivalent format). Sender information from OTRS maps to the part author: OTRS customers become Intercom contacts, OTRS agents become Teammate parts. Attachments on each article migrate as file parts attached to the corresponding conversation part.
OTRS
Customer
Intercom
Contact
1:1OTRS Customer records (with UserID, email, phone, and user preferences) map to Intercom Contacts. The OTRS CustomerID becomes the Intercom contact's external_id for dedupe. OTRS customer type (customer or company customer) determines whether the contact record is tagged as individual or linked to an Intercom Company. Customer preferences and valid/invalid phone flags are preserved as contact attributes.
OTRS
Dynamic Field (Ticket)
Intercom
Conversation Metadata or Custom Attribute
lossyOTRS Dynamic Fields on tickets are enumerated during scoping, classified by data type (text, integer, date, dropdown, checkbox, multi-select). Text and numeric fields map to conversation metadata tags. Date fields map to conversation custom timestamps. Dropdown and multi-select fields map to conversation tags with the original OTRS field name preserved as tag namespace. We map Dynamic Fields on Customer records to Intercom custom attributes on the Contact object. Fields that have no equivalent in Intercom's schema are flagged as requires-admin-decision items during scoping.
OTRS
Queue
Intercom
Inbox
1:1OTRS Queues (ticket routing units with access control and assignment rules) map to Intercom Inboxes. Each OTRS queue name becomes an Intercom inbox name. OTRS queue-level SLA definitions become SLA rules attached to the corresponding Intercom inbox on the Expert plan. Queue assignment rules map to Intercom assignment rules within the inbox. We enumerate all queues during scoping and document the mapping; inboxes that have no direct equivalent are flagged for the customer's admin to configure pre-migration.
OTRS
User / Agent
Intercom
Teammate
1:1OTRS Agent records map to Intercom Teammates. We resolve by email match. OTRS roles and group memberships do not have a direct Intercom equivalent; Intercom's permission model is Inbox-based rather than role-based. We document the OTRS role-to-inbox mapping for the admin to implement post-migration. Agents without an active Intercom account at migration time go into a reconciliation queue for admin provisioning.
OTRS
Attachment
Intercom
Conversation Part (File)
1:1OTRS attachments are stored as binary blobs in the database linked to ticket articles. We extract each blob with its original filename and MIME type and import it as a file part on the corresponding Intercom conversation part. Attachments exceeding Intercom's file size limits are flagged for alternative storage and link-sharing. We preserve the original filename in the file metadata for agent reference.
OTRS
SLA Definition
Intercom
SLA Rule (Expert plan) or Conversation Tag
lossyOTRS SLA definitions (response time, resolution time, calendar-linked escalation thresholds) have no direct Intercom equivalent at Essential or Advanced tiers. At Expert tier, Intercom offers SLA rules that can be attached to conversations. We map OTRS SLA names and urgency levels as tags on each conversation, with the SLA threshold time preserved as a custom timestamp attribute. The customer's admin configures formal SLA rules in Intercom's SLA settings post-migration if Expert plan is selected.
OTRS
Service Catalog
Intercom
Help Center Article
1:manyOTRS Services define available offerings linked to SLAs and queues. Service definitions migrate as Intercom Help Center articles or as custom attributes on Contacts representing service subscriptions. We export service names, descriptions, and SLA associations and map them to articles grouped by category in Intercom's Help Center. Service catalog ordering and customer-facing portal routing do not have a direct Intercom equivalent and are documented for admin rebuild.
OTRS
Configuration Item
Intercom
Company Custom Attribute or No Equivalent
1:1OTRS Configuration Items (CMDB entries with class-based schema) have no direct Intercom equivalent. Intercom Companies are CRM records, not IT asset records. We map CI data to custom attributes on the Intercom Company record where the CI's affected customer maps to a Company. For CIs not associated with a customer (internal infrastructure records), we deliver a written CI inventory document for the customer's admin to evaluate Intercom's custom object options or a third-party CMDB integration. CI-to-Ticket linking is not reconstructable in Intercom without a custom integration.
OTRS
Process Management (Workflow)
Intercom
Workflow Builder (rebuild required)
lossyOTRS Process Management stores workflow definitions as XML with activity nodes, transition rules, and conditional branching. These workflows do not migrate as functional code to Intercom's Workflow Builder because the action models are structurally incompatible. We export the workflow structure (states, transitions, responsible agents, and condition logic) as a written process inventory document. The customer's admin uses this document to rebuild equivalent automations in Intercom Workflow Builder or to implement a third-party workflow integration.
OTRS
Stats and Reports
Intercom
No Equivalent
lossyOTRS reporting stores report definitions and rendered output in the database. These are proprietary to OTRS and cannot be directly imported into Intercom's reporting. We deliver a written inventory of existing OTRS report definitions and their parameters so the customer's admin can rebuild equivalent reports in Intercom's reporting dashboard or connect to a BI tool for historical OTRS reporting.
| OTRS | Intercom | Compatibility | |
|---|---|---|---|
| Ticket | Conversation1:1 | Fully supported | |
| Article | Conversation Part1:many | Fully supported | |
| Customer | Contact1:1 | Fully supported | |
| Dynamic Field (Ticket) | Conversation Metadata or Custom Attributelossy | Fully supported | |
| Queue | Inbox1:1 | Fully supported | |
| User / Agent | Teammate1:1 | Fully supported | |
| Attachment | Conversation Part (File)1:1 | Fully supported | |
| SLA Definition | SLA Rule (Expert plan) or Conversation Taglossy | Fully supported | |
| Service Catalog | Help Center Article1:many | Mapping required | |
| Configuration Item | Company Custom Attribute or No Equivalent1:1 | Fully supported | |
| Process Management (Workflow) | Workflow Builder (rebuild required)lossy | Fully supported | |
| Stats and Reports | No Equivalentlossy | Not 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.
OTRS gotchas
Community Edition security freeze forces migration
Direct database export preferred over SOAP API
Major version upgrades can leave login broken
Intercom gotchas
S3 JSON export omits conversation transcripts
Workspace isolation prevents workflow migration
Fin AI resolution fees compound with automation success
Two-year conversation history limit on historical export
Private app rate limits share workspace quota
Pair-specific challenges
Migration approach
Discovery and OTRS version audit
We audit the source OTRS instance by connecting to the MySQL or PostgreSQL database directly (coordinating with the customer's DBA for read-only access during a maintenance window). We enumerate ticket volume, article count, attachment blob size, Dynamic Field names and types, queue count, SLA definition count, and Process Management workflow XML files. We identify whether the OTRS version is Community Edition (with the security-patch freeze risk) or Business Solution. We also identify Configuration Item tables and the CI-to-Ticket linking table. The discovery output is a written migration scope document that defines the object mapping, a reconciliation row-count target for each object, and a list of requires-admin-decision items for queues, SLAs, and CMDB that lack direct Intercom equivalents.
Intercom workspace pre-configuration
We guide the customer's Intercom admin through pre-migration workspace setup: creating inboxes mapped from OTRS queues, defining custom attributes on Contacts mapped from OTRS Customer fields and Customer Dynamic Fields, configuring custom metadata fields on Conversations mapped from Ticket Dynamic Fields, and setting up team accounts for each OTRS Agent. We document the OTRS role-to-Intercom-inbox mapping during this step so that permissions are ready before production migration. If the customer is on the Essential or Advanced plan, we note that SLA rules require manual configuration post-migration using the SLA metadata tags we carry over.
Schema enumeration and sandbox pass
We enumerate all Dynamic Field names, types, and current values across the OTRS ticket and customer tables and generate the corresponding Intercom custom attribute and conversation metadata schema. We run a sandbox migration pass (into the customer's Intercom workspace or a test environment) using a 30-day snapshot of data to validate record counts, field mapping, attachment extraction, and conversation threading. The customer reconciles the sandbox output against the OTRS source and signs off before production migration begins. Any missing field mappings or schema corrections happen at this stage.
Agent and user reconciliation
We extract every distinct OTRS Agent email address and match against the Intercom workspace's teammate list. Agents without an active Intercom account are held in a reconciliation queue. The customer's admin provisions missing teammates and assigns them to inboxes before production migration. Migration cannot proceed past this step because conversation assignment and conversation part authorship both require a valid Intercom Teammate reference.
Production migration in dependency order
We run production migration in record-dependency order: Contacts (from OTRS Customers), Companies (if the customer uses OTRS company-linked customers), Conversations (from OTRS Tickets with article history as conversation parts), custom attributes (from OTRS Dynamic Fields), and file attachments (extracted from article blobs and reattached as conversation file parts). SLA metadata from OTRS SLA definitions is written as conversation tags and custom timestamp attributes. Each phase emits a row-count reconciliation report. We apply batch chunking at 100 records per request and exponential backoff on Intercom 429 responses.
Cutover, delta migration, and workflow handoff
We freeze OTRS write access during cutover, run a delta migration of any tickets or articles modified during the migration window, then mark Intercom as the system of record. We deliver the Process Management workflow inventory document (XML structure replayed as written states and transitions) and the CMDB Configuration Item inventory document to the customer's admin. We support a one-week hypercare window for reconciliation issues. We do not rebuild OTRS workflows in Intercom Workflow Builder, configure SLA rules (if Expert plan), or set up CMDB integrations as part of the standard migration scope; these are separate configuration engagements.
Platform deep dives
OTRS
Source
Strengths
Weaknesses
Intercom
Destination
Strengths
Weaknesses
Complexity grading
Standard Helpdesk migration. 2 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across OTRS and Intercom.
Object compatibility
2 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
OTRS: Not publicly documented; no published rate limit values.
Data volume sensitivity
OTRS 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 OTRS to Intercom migration scoping. Not seeing yours? Book a call.
Walk through your OTRS to Intercom migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave OTRS
Other ways to arrive at Intercom
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.