Helpdesk migration

Migrate from eTicket to Zendesk

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

eTicket logo

eTicket

Source

Zendesk

Destination

Zendesk logo

Compatibility

82%

9 of 11

objects map 1:1 between eTicket and Zendesk.

Complexity

CModerate

Timeline

2-3 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from eTicket to Zendesk is a platform upgrade from a lightweight single-team ticketing tool to a multi-channel, enterprise-capable support suite. eTicket stores Tickets, Customers, Agents, Teams, custom Ticket Fields, Conversations, Attachments, Tags, and KB Articles. Zendesk maps these to Tickets, End-users, Agents, Groups, ticket fields (dropdown, multi-select, text, numeric, date, checkbox), Comments, Attachments, Tags, and Help Center articles respectively. We sequence the migration to load Users before Tickets so that the requester relationship is satisfied at insert time, chunk large ticket histories into API-safe batches to avoid timeout failures, and verify record counts before and after each phase. Automations (triggers, macros, automations) do not migrate as code; we deliver a written inventory of every active eTicket workflow for your admin to rebuild in Zendesk.

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

eTicket logo

eTicket

What's pushing teams away

  • The project is effectively dormant — the latest documented release (1.7.3) is from October 2008, with no modern development cadence, leaving customers exposed to unpatched dependency and security issues.
  • No public API and no modern integration story — teams that want to connect helpdesk data to CRM, BI, or modern automation tools have no native path.
  • PHP and MySQL stack assumptions are dated; deploying on modern hosting often requires patching PHP compatibility issues that the upstream project does not address.
  • Limited reporting and analytics — eTicket is a basic queue-and-conversation tool, with no SLA timers, no advanced workflow, and no dashboard depth that modern helpdesks ship by default.
  • Migration paths to modern helpdesks (Zendesk, Freshdesk, Help Scout) are entirely manual — there is no published export tool or supported migration partner, so teams must scrape the MySQL database directly.

Choosing

Zendesk logo

Zendesk

What's pulling them in

  • Mature omnichannel routing across email, chat, phone, messaging, and social — one unified inbox for support teams regardless of size or complexity.
  • Deep automation with Triggers, Automations, and SLA Policies lets high-volume teams enforce consistent workflows without manual ticket handling.
  • Large ecosystem of third-party integrations and a public app marketplace reduce friction for teams already using Salesforce, Jira, or Slack.
  • Industry-leading brand recognition and trust signal — many enterprise buyers default to Zendesk as a known quantity in vendor procurement cycles.
  • Generous documentation library and community mean onboarding teams can self-configure without needing a services engagement to get started.

Object mapping

How eTicket objects map to Zendesk

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

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

eTicket

Ticket

maps to

Zendesk

Ticket

1:1
Fully supported

eTicket Tickets map directly to Zendesk Tickets. The eTicket ticket subject maps to Zendesk subject, ticket status maps to Zendesk status (New, Open, Pending, Hold, Solved, Closed), priority maps to Zendesk priority (Low, Normal, High, Urgent), and the ticket ID is preserved as a custom field or in the ticket description for audit trail. We resolve agent assignment by matching the eTicket agent email against the Zendesk User table; unresolved assignments fall back to a default agent designated during scoping.

eTicket

Customer

maps to

Zendesk

End-user (User)

1:1
Fully supported

eTicket Customer records (end-users who submit tickets) map to Zendesk End-users. We map email address as the primary identifier, name fields to first_name and last_name, and preserve any customer-level custom fields as Zendesk user fields. Customers without an email address require special handling; we assign a generated placeholder during migration and flag them for admin review.

eTicket

Customer

maps to

Zendesk

Organization

1:1
Fully supported

If eTicket customers are associated with companies or organizations, those associations map to Zendesk Organizations. We create the Organization in Zendesk first, then link the User record to it via the organization_id field. eTicket does not have a native organization object; we infer org membership from a dedicated org field or domain-matching logic during scoping.

eTicket

Agent

maps to

Zendesk

Agent (User with agent role)

1:1
Fully supported

eTicket Agent records map to Zendesk Users with the agent role. We match by email address and preserve the agent's display name, role (if eTicket distinguishes admin from agent), and group membership. Zendesk requires agents to exist in the system before tickets referencing them can be inserted; we run the User migration phase before the Ticket phase to satisfy this dependency.

eTicket

Team

maps to

Zendesk

Group

1:1
Fully supported

eTicket Teams map to Zendesk Groups. We preserve team name and, where eTicket assigns agents to teams, we map team membership to Zendesk Group membership on the User record. Zendesk Groups are the primary routing unit for Views and are referenced by triggers and automations, so group structure must be in place before ticket import begins.

eTicket

Custom Ticket Field

maps to

Zendesk

Ticket Field

lossy
Fully supported

eTicket custom fields map to Zendesk ticket fields. We map field types as follows: eTicket text fields to Zendesk text fields (65,536 character limit); eTicket dropdown to Zendesk dropdown (single-select); eTicket multi-select to Zendesk multi-select; eTicket checkbox to Zendesk checkbox (boolean); eTicket numeric to Zendesk numeric (integer); eTicket date to Zendesk date. Dropdown and multi-select options require CSV import into Zendesk Admin before migration. Fields without a direct Zendesk equivalent are flagged and migrated as private notes or held for admin decision.

eTicket

Conversation

maps to

Zendesk

Ticket Comment

1:1
Fully supported

eTicket ticket conversations (public and private replies) map to Zendesk ticket comments. Public replies become public comments visible to the end-user; private replies become internal notes. Threading order is preserved by setting the comment's created_at timestamp to the original eTicket timestamp. We batch comment inserts in chunks of 100 per ticket to avoid Zendesk API timeouts on tickets with long histories.

eTicket

Attachment

maps to

Zendesk

Ticket Attachment

1:1
Fully supported

File attachments on eTicket tickets migrate to Zendesk ticket comments as inline or standard attachments. We download attachments from eTicket, re-upload to Zendesk's comment endpoint, and link them to the corresponding comment. Attachments exceeding 50 MB require chunked upload handling. Inline images in ticket descriptions or comments migrate separately as file attachments.

eTicket

Tag

maps to

Zendesk

Tag

1:1
Fully supported

eTicket tags on tickets map to Zendesk tags. We import tags as-is and preserve the tag-to-ticket relationship. Zendesk uses tags for reporting and as trigger conditions, so tag names are preserved exactly. Tags that eTicket uses for internal categorization rather than customer-facing routing are imported without modification.

eTicket

KB Article

maps to

Zendesk

Help Center Article

1:1
Fully supported

eTicket knowledge base articles migrate to Zendesk Guide articles. We map article title, body (HTML or markdown converted to Zendesk's article markup), author, creation and update timestamps, and section/category membership. Zendesk Guide must be activated in the destination account before articles can be created. If eTicket uses a folder-based structure, we map folders to Zendesk Sections and preserve the hierarchy. Unsafe HTML (such as embedded video iframes) may be stripped by Zendesk's default security settings; we flag this post-migration for admin review in Guide Settings.

eTicket

Ticket Status

maps to

Zendesk

Ticket Status (via Status mapping)

lossy
Fully supported

eTicket ticket status values map to Zendesk ticket status values. We configure a status mapping table during scoping: eTicket Open maps to Zendesk Open; eTicket Resolved maps to Solved; eTicket Closed maps to Closed or Archived. Custom statuses in eTicket require Zendesk custom status configuration before migration. We do not map eTicket's workflow-based statuses to Zendesk's ticket status field if eTicket uses a separate status workflow object; those are documented as out-of-scope automation items for admin rebuild.

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.

eTicket logo

eTicket gotchas

High

Project is effectively dormant — latest release dates to 2008

High

No public API or vendor-supported export tooling

Medium

Attachments live on disk and can be orphaned

Medium

No SLA, automation, or modern routing engine

Zendesk logo

Zendesk gotchas

High

Data export requires API scripting on non-Enterprise plans

Medium

Automations cap at 500 active rules and 1,000 tickets per hour

Medium

Help Center has no native export feature

High

Custom Objects and full data export are Enterprise-only

Pair-specific challenges

  • eTicket custom fields require Zendesk field pre-creation

    Zendesk requires ticket fields to exist in the admin panel before data can be inserted via API. eTicket custom fields (dropdown, multi-select, text, numeric, checkbox, date) must be pre-created in Zendesk Admin with matching field types before migration begins. Dropdown and multi-select fields additionally require option values uploaded via CSV. We do not create Zendesk fields on behalf of the customer; we provide the field definition list (name, type, options) in the scoping document and the customer's Zendesk admin creates them before the migration phase starts. Skipping this step blocks the entire ticket import.

  • Zendesk Guide must be activated before KB migration

    Zendesk Help Center (Guide) is a paid add-on that must be explicitly activated in the Zendesk admin panel before articles can be created. If the migration scope includes knowledge base articles, we confirm Guide activation during scoping. Without it, the article migration phase returns an API permission error. Additionally, Zendesk strips unsafe HTML tags (iframes, certain video embeds) by default; the customer's admin must enable 'Display unsafe content' in Guide Settings post-migration if embedded media is required.

  • Agent profiles do not migrate; they must be provisioned manually

    Zendesk does not accept agent profile provisioning via bulk import in the same workflow as ticket migration. We import eTicket agents as Zendesk Users (with the agent role), but group memberships, agent collision settings, availability schedules, and role-specific permissions require manual configuration in Zendesk Admin after migration. We match agents by email address during the User phase, but the admin must confirm that each Zendesk User has the correct Groups and Views assigned before agents begin working in the new system.

  • Zendesk does not show closed tickets by default in Views

    After migration, agents searching for tickets in Zendesk's default Views may not see historical closed tickets unless they use the All Tickets view or search with an asterisk. Zendesk automatically archives and marks old tickets as closed, and standard Views filter by status. We flag this in the post-migration handoff and recommend the admin creates an 'All Tickets' View or trains agents to search by ticket ID for historical reference. This is a Zendesk default behavior, not a migration artifact.

  • Inline images and unsafe HTML require post-migration review

    eTicket tickets containing inline images or HTML content may render differently in Zendesk. Zendesk's Help Center and ticket comments sanitize HTML by default, stripping iframes, certain script tags, and embedded video references. Images hosted externally on eTicket may not render if the source URL requires authentication or has expired. We migrate inline images as attachments and flag any tickets with known rendering differences for the customer's admin to review post-migration.

Migration approach

Six steps for a successful eTicket to Zendesk data migration

  1. Scoping and field inventory

    We conduct a scoping call to inventory the eTicket source: total Tickets, total Customers, total Agents, Teams, custom Ticket Fields with types and options, Tags in use, and KB Articles. We extract a representative sample (50-100 tickets) to validate field type mapping and identify any eTicket-specific fields that lack a Zendesk equivalent. The output is a written Migration Scope document specifying the Zendesk fields to pre-create (with type, label, and option values), the agent-to-User matching rule, the status mapping table, and any fields flagged as out-of-scope for admin decision.

  2. Zendesk preparation and field pre-creation

    The customer provisions the Zendesk destination: activating Zendesk Guide if KB articles are in scope, creating all required ticket fields (with correct types and option CSV import for dropdowns and multi-selects), creating Groups matching eTicket Teams, provisioning Zendesk Users for all migrating agents with correct group memberships and roles, and disabling triggers and automations that could fire during import. We provide a field creation checklist. This step is a customer action item; migration cannot begin until it is confirmed complete.

  3. User and Organization migration

    We migrate eTicket Customers to Zendesk End-users in batches of 500, using email as the dedupe key. If Organization membership is inferred from eTicket's data model, we create Zendesk Organizations first and link Users to them. Agents migrate to Zendesk Users matched by email with the agent role. We resolve every agent reference on tickets against the User table; any unresolved references fall back to the default agent designated in the scoping document. Each batch emits a reconciliation count before proceeding.

  4. Ticket migration with comment threading

    We migrate eTicket Tickets in batches of 200, resolving the assignee (Agent) and requester (End-user) lookups from the User migration phase. After all tickets are inserted, we migrate Comments in batches of 100 per ticket, preserving created_at timestamps for threading order. Public eTicket replies map to public Zendesk comments; private replies map to internal notes. Attachments are downloaded from eTicket, re-uploaded to Zendesk comments, and linked. Tags are inserted via the tag endpoint after ticket records are created.

  5. Knowledge base migration (if in scope)

    If Zendesk Guide is activated and KB articles are in scope, we migrate articles after tickets. We map eTicket article folders to Zendesk Sections, preserving the category hierarchy. Article HTML is converted to Zendesk's markup format. Author attribution maps to the Zendesk User with matching email; if no match exists, the article is attributed to the default admin. Post-migration, the admin reviews Guide Settings for unsafe HTML handling and article permissions.

  6. Cutover, validation, and automation handoff

    We freeze writes to eTicket, run a delta migration of any records modified during the migration window, then confirm Zendesk as the system of record. We deliver a record-count reconciliation report (Tickets in, Users in, Organizations in, Comments in, Articles in) and a spot-check sample of 20-30 tickets verified against the source. We deliver the Automation Inventory document listing every eTicket workflow, trigger, or rule with its conditions and actions for the admin to rebuild in Zendesk Triggers and Macros. We support a five-business-day hypercare window for reconciliation issues.

Platform deep dives

Context on both ends of the pair

eTicket logo

eTicket

Source

Strengths

  • Free and open-source self-hosted PHP/MySQL helpdesk.
  • Email-to-ticket (pop3/pipe) and web-form ticket creation in the core distribution.
  • Skinnable to match the host website's branding.
  • Multi-lingual UI and CAPTCHA / spam filtering included.
  • Full database ownership for teams that need on-premise data control.

Weaknesses

  • Project is effectively dormant; last release in October 2008.
  • No public API or supported migration tooling — exports go through direct MySQL queries.
  • No SLA engine, no automation rules, no modern reporting.
  • PHP / MySQL stack compatibility issues on modern hosting are not addressed upstream.
  • Limited third-party community or commercial support for new deployments.
Zendesk logo

Zendesk

Destination

Strengths

  • Well-documented REST API with broad endpoint coverage for Tickets, Users, Organizations, and Help Center.
  • Rich automation primitives: Triggers (event-driven), Automations (time-based), and Macros with variable substitution.
  • Multi-brand support enables large organizations to route and isolate support by product line or subsidiary.
  • Scalable from small teams on Team plan to global enterprises on Enterprise Plus with sandbox and disaster recovery options.
  • Large partner ecosystem and marketplace with hundreds of pre-built integrations reduces integration work at deployment.

Weaknesses

  • Per-agent pricing with aggressive feature gating makes lower tiers feel artificially limited.
  • No native full-KB export — Help Center content requires API scripting to extract.
  • AI features are add-on priced and behave inconsistently, not deeply embedded in core workflows.
  • Implementation timelines for complex multi-channel setups routinely exceed initial estimates by weeks or months.
  • Knowledge base and help center functionality are separate from core ticketing with their own permission model and versioning.

Complexity grading

How hard is this migration?

Moderate Helpdesk migration. 5 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 eTicket and Zendesk.

  • Object compatibility

    C

    5 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

    eTicket: Not applicable — no API surface exists..

  • Data volume sensitivity

    B

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

Estimator

Estimate your eTicket to Zendesk 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 eTicket to Zendesk data migrations

Answers to the questions buyers ask most during eTicket to Zendesk migration scoping. Not seeing yours? Book a call.

Can't find your answer?

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

Book a free 30 minute consultation

Most eTicket migrations complete in two to three weeks for accounts under 10,000 Tickets and 2,000 Users. Migrations with large conversation histories (over 100,000 comments), a knowledge base to migrate, or complex custom field structures move to four to six weeks. Timeline assumes the customer's Zendesk admin completes field pre-creation and Guide activation before migration begins; delays in Zendesk preparation extend the overall timeline.

Adjacent paths

Related migrations to explore

Ready when you are

Move from eTicket.
Land in Zendesk, 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