ManageEngine ServiceDesk Plus to Freshservice or JSM: on-prem to SaaS
Short answer
A ServiceDesk Plus (SDP) exit is usually an on-premises to SaaS project, even when the team is already on SDP Cloud. ManageEngine publishes official ways to get data out: in the request list view you can select records and use Actions → Export Requests, and the REST API (technician API key, /api/v3/) can read requests plus related notes, work logs, conversations, attachments, technicians, requesters and templates. There is no Freshservice one-click SDP importer on the pages we checked. Freshworks does document a ServiceDesk Plus Connector that syncs incidents and service requests between the two systems using recipes — that is ongoing integration, not a historical migration. Freshservice’s partner bulk migration API imports tickets and notes (50 per request, 10 requests per minute, 40 MB of attachments per entity) and tells you to use the public API for everything else. Jira Service Management Cloud can take work items through the CSV importer, with a separate External System Import when you need parent-child hierarchy. What you rebuild, in our experience, is the hard part: custom scripts, request templates, business rules, change workflows, surveys and asset relationships. Pick Freshservice if you want published ITSM features and a faster catalogue; pick JSM if your engineers already live in Jira.
Contents
- Who this guide is for
- Why teams leave ServiceDesk Plus
- What you are leaving: editions, deployment and published price context
- Getting data out of ServiceDesk Plus
- Getting data into Freshservice or JSM
- What typically moves, and what you rebuild
- Freshservice or JSM: which landing place fits
- A phased cutover, not a weekend switch
- Risks that actually bite
- Best for, and wrong choice when
- Frequently asked questions
Who this guide is for
This guide is for IT and service desk leads who run ManageEngine ServiceDesk Plus — on-premises or cloud — and are evaluating a move to Freshservice or Jira Service Management (JSM). SDP is common in mid-market organisations worldwide, including in India and across Europe; the advice here is for a global reader. We do not treat any one country as the audience, and we do not publish localised Indian list prices.
Official sources, checked on Nov 8, 2026: the ManageEngine ServiceDesk Plus pricing page and the ServiceDesk Plus edition comparison for editions and published US dollar prices; the ManageEngine ServiceDesk Plus UK pricing URL, which still showed US dollar figures rather than a GBP list; the ServiceDesk Plus request list view help for request export; the ServiceDesk Plus REST API documentation for the REST API; Freshworks’ Freshservice integration with ServiceDesk Plus and Freshservice bulk migration API guide; and Atlassian’s Atlassian guide to creating work items with the CSV importer. Destination prices come from the Freshservice pricing page and the Atlassian Service Collection / Jira Service Management pricing page. Opinions about effort, phasing and which landing place fits are ours.
On-prem SDP is a different project from SDP Cloud
The export buttons and API are documented for ServiceDesk Plus as a product. An on-premises instance still has to get data off your servers, through firewalls and into a SaaS importer that expects reachable attachment URLs. Budget time for extract plumbing, not just field mapping.
Why teams leave ServiceDesk Plus
These reasons are from projects we have run, not from ManageEngine’s marketing. Label them as such.
- On-premises overhead. You own the server, the database, the upgrades and the backup. That was a strength when the alternative was an unknown SaaS vendor. It becomes a liability when the people who built the instance leave and every upgrade risks custom scripts.
- Customisation gravity. SDP is highly configurable. Over five or ten years that usually means request templates with dozens of extra fields, custom scripts, additional modules bought as add-ons, and a CMDB or asset store that only two people understand.
- A catalogue and SLA story that has outgrown Standard. ManageEngine’s edition split is real: Standard is the help desk, Professional adds assets, Enterprise adds change, problem, release, projects and CMDB (see the ServiceDesk Plus edition comparison). Teams stuck on an older edition often find it cheaper, politically, to move SaaS than to reopen an Enterprise licence conversation.
- A wider SaaS standard. Once HR, facilities or engineering pick Freshservice or Jira, IT is asked why it still runs a dedicated on-prem desk.
SDP is not a failed product. If you are happy on Enterprise Cloud, have current skills and like ManageEngine’s wider suite (endpoint, AD, and so on), staying can be the rational choice. This guide is for when you have already decided to leave, or you need a clear picture of what leaving involves before you decide.
What you are leaving: editions, deployment and published price context
Confirm three facts about the source system before you design the target: edition (Standard, Professional or Enterprise, plus paid add-ons), deployment (on-premises or cloud) and which modules you actually use (requests, problems, changes, assets, CMDB, projects, purchases, contracts, surveys).
On Nov 8, 2026 the ManageEngine ServiceDesk Plus pricing page said prices were “current as of September 2026” and published this shape:
- Three editions: Standard (IT service desk), Professional (desk plus assets), Enterprise (desk plus assets plus change and projects). Predictive, generative and conversational AI capabilities are described as available across editions at no additional cost; Zia Agents are included in Enterprise.
- You pay for technicians (and, on Professional and Enterprise, IT assets). There is no separate charge for end users.
- Cloud: Standard is free for up to five technicians, then from $1,545 a year at 10 technicians. Professional from $645 a year for two technicians and 250 assets. Enterprise from $1,595 a year for two technicians and 250 assets. The page’s “starts from” per-technician rates are $13 / $16 (Standard, yearly / monthly billing), $27 / $33 (Professional) and $67 / $78 (Enterprise).
- On-premises: Standard is free for up to five technicians, then from $1,195 a year at 10 technicians. Professional from $495 a year for two technicians and 250 IT assets. Enterprise from $1,195 a year for two technicians and 250 IT assets. JSON-LD “starts from” per-technician annual figures on the same page are $120, $248 and $598 respectively.
Worked Cloud annual totals from the same page’s structured data, which matter when you compare a stay-versus-go licence line (asset counts on Professional and Enterprise follow the published bands; do not assume unlimited assets at these figures):
| Technicians | Cloud Standard / year | Cloud Professional / year | Cloud Enterprise / year |
|---|---|---|---|
| 10 | $1,545 (about £1,146.48) | $2,945 (about £2,185.37) | $7,795 (about £5,784.36) |
| 20 | $3,145 (about £2,333.78) | $5,945 (about £4,411.55) | $14,095 (about £10,459.34) |
| 50 | $6,245 (about £4,634.16) | $13,945 (about £10,348.03) | $27,995 (about £20,773.97) |
ManageEngine did not publish a GBP list on the US page, and the ManageEngine ServiceDesk Plus UK pricing URL still displayed US dollar amounts when we opened it on Nov 8, 2026. The pound figures above are indicative conversions. Indicative GBP conversions use the Bank of England daily spot rate (series XUDLUSS) of US$1.3476 per £1 for 5 Nov 2026, the latest published figure when we checked the Bank of England series on Nov 8, 2026 (the IADB CSV through 8 Nov 2026 also ends on that print). They are not official UK prices; the vendor does not publish a GBP list price, and your invoice currency, rate and VAT treatment may differ.
Destination licence context, also checked Nov 8, 2026: Freshservice Growth is $49 / £40 and Pro is $99 / £79 per agent per month billed annually (see our Freshservice pricing guide). JSM showed Standard at $21.50 and Premium at $55.28 per agent per month at the calculator’s default 75 agents, USD only. Those are not total-cost-of-migration numbers, and they are not a reason to stay or go by themselves: the rebuild work usually dwarfs a year of licence delta.
Getting data out of ServiceDesk Plus
The official UI export
The ServiceDesk Plus request list view help documents request views (list, classic and combined) and states that you can export requests only from list view: select the requests, go to Actions → Export Requests, choose a format and export. If your technicians live in classic or combined view, switch to list view before you try this. Use filters and the column chooser so the export contains the fields you intend to map, not just the columns someone pinned for daily work.
That export is the right starting point for a sample mapping and for a filtered historical set (for example, requests updated in the last 18 months). It is rarely enough, by itself, for a full history with notes, work logs and attachments: those live in related records.
The official REST API
The ServiceDesk Plus REST API documentation describes a technician-keyed REST API under /api/v3/. An administrator generates an API key for a technician who has login permission; the key inherits that technician’s role, and it is deleted if the technician login is disabled. Supported operations on the page we checked include creating, viewing, editing, closing and deleting requests; adding, editing and viewing notes, work logs, conversations, attachments, resolutions and notifications; plus technician and requester imports and a set of admin lookups (categories, statuses, priorities, request templates, support groups and similar).
Two practical consequences follow from that official list:
- A full request history is several API resources, not one. The header row of an export will not give you notes and work logs. Plan separate extract jobs, and keep the SDP request ID as a join key.
- The key is only as powerful as the technician. Use a dedicated migration technician with rights to read every module you intend to move, generate a key with a known expiry, and revoke it when the project ends.
We are not publishing unverified pagination parameter names. The v3 documentation (the ServiceDesk Plus V3 API documentation points through to the current reference) is where you should take page size and start index from, because those details change between builds. For a large on-prem instance, run the extract on the LAN and stage files somewhere the SaaS side can reach.
What we have not seen as a native “move me to Freshservice” button
ManageEngine’s public help, on the pages we checked, documents export and API access. It does not document a vendor-run move into Freshservice or JSM. Treat third-party migration appliances as optional, and only if you can read that vendor’s own documentation for SDP as a source. We do not recommend an unnamed tool here.
Getting data into Freshservice or JSM
Freshservice: public API, partner bulk API, no native SDP importer
We did not find a Freshworks help article that offers a built-in “import from ServiceDesk Plus” wizard for historical tickets. What Freshworks does publish:
- The Freshservice bulk migration API guide (modified 24 November 2025) describes partner bulk APIs for tickets and notes plus their attachments. Everything else should go through the standard public APIs at Freshservice public API documentation. Dependent records (workspaces, users) must exist before tickets; notes need the Freshservice ticket ID. Attachments must be reachable at a public URL. Maximum 50 tickets or notes per request, account-level rate limit of 10 requests per minute, 40 MB of attachments per entity. Assignment, cc and association emails are not sent during the migration; Slack, Teams, business rules and workflows are not muted, so you should pause them first. Search and analytics may lag. A single oversize attachment is rejected but the parent ticket or note is still created.
- The Freshservice integration with ServiceDesk Plus (modified 26 August 2025) describes the ServiceDesk Plus Connector, installed from Connector Apps. It uses predefined recipes to create and update incidents between the two systems, create and update service requests from Freshservice to ServiceDesk Plus, map custom fields, filter which tickets sync, choose a workspace and sync conversation notes. You authenticate Freshservice with a domain URL and API key, and ServiceDesk Plus with client ID, client secret, data centre and portal name. The overview dashboard counts connector tasks, which are how Freshservice bills connector usage.
The connector is not a migration
The ServiceDesk Plus Connector is an ongoing sync for teams that will run both products for a while (for example a phased cutover, or a residual SDP instance). It is not a bulk historical import, and it consumes connector tasks on Pro or Enterprise (see the pricing guide). Do not plan to “just turn on the connector” and walk away from five years of tickets.
Jira Service Management Cloud: CSV, with a separate path for hierarchy
The Atlassian guide to creating work items with the CSV importer documents the CSV importer for JSM Cloud. You need Create work item permission and Make bulk changes; users without administrator permission can import 250 work items per CSV file. Administrators can run a more advanced bulk import. The file must be well-formed, with a heading row that includes a summary column. The same guide explains attachments via URL (HTTP or HTTPS, reachable from Jira), multiple values in repeated columns, comments, work logs in seconds, import into more than one project using Project Name and Project Key columns, and the separate CSV External System Import when you need parent-child hierarchy (the bulk create path cannot map Initiative → Epic → Story → Sub-task). Portal-only JSM customers are handled differently from licensed users if the import data disagrees with the destination.
JSM will not, from that page, reconstruct SDP change workflows or a CMDB. It will create work items that you have mapped. Request types, queues, SLAs and portal groups are configuration you build in JSM and then attach imported work items to.
What typically moves, and what you rebuild
The table below is our working map, grounded in what the official export and import paths actually cover. It is not a ManageEngine or Freshworks guarantee.
| Object | How it usually leaves SDP | How it usually lands | What to expect |
|---|---|---|---|
| Requesters and technicians | API (requester and technician operations) plus any user export you already use | Create users first in Freshservice or Jira/JSM, then map emails as the join key | Access and roles are rebuilt. Do not copy SDP technician privileges blindly. |
| Requests / incidents / service requests | List-view export plus API for notes, work logs, conversations, attachments | Freshservice public or bulk ticket API; JSM CSV (and External System Import for hierarchy) | Statuses, priorities and templates need a mapping table. Original IDs should be stored in a custom field. |
| Notes and conversations | Separate API operations | Freshservice notes bulk API or public notes API; JSM comments in the CSV | Decide public versus private. Threading will not look the same. |
| Attachments | API / export, then staged at reachable URLs | Freshservice bulk API (public URLs, 40 MB cap); JSM CSV attachment URLs | On-prem file stores are the usual surprise. Test with the largest real attachments, not a 20 KB screenshot. |
| Request templates and custom fields | Admin API lookups and a documented inventory | Rebuilt as Freshservice ticket fields and catalog items, or JSM request types and forms | This is configuration, not data. Budget rebuild time. |
| Business rules, custom scripts, notifications, SLA definitions | Not a clean export — inventory them from the admin UI | Rebuilt as Freshservice workflows / automations or JSM automation and SLA calendars | Scripts do not migrate. Rewrite the behaviour you still need. |
| Assets and CMDB relationships | Depends on edition and how you stored them; treat as a separate extract | Freshservice assets (Growth and above include the ITAM Growth package); JSM Assets (object allowances apply) | Relationships are the part that breaks. Import assets first, then relink. |
| Problems, changes, releases, projects, purchases, contracts, surveys | Only if you use those modules and can extract them | Rebuild the process; import residual records only if you have a mapped object | A change record without its workflow and CAB rules is a souvenir, not a process. |
| Knowledge base | Export articles if your edition supports it | Freshservice or JSM knowledge, rewritten to the new portal structure | Links to SDP request IDs will die unless you replace them. |
| Surveys and custom modules | Inventory, then decide | Rebuild or drop | Rarely worth a line-by-line move. |
Our rule: migrate people, open work, a bounded period of closed history, and assets you can match. Rebuild the operating model (templates, rules, SLAs, catalogue, change). Archive the rest in SDP in read-only mode until you are sure nobody needs a seven-year-old work log.
Freshservice or JSM: which landing place fits
| Choose Freshservice when | Choose JSM when |
|---|---|
| You want an ITIL-shaped desk (catalogue, assets, then problem and change on Pro) with official USD and GBP list prices. | Your company already runs on Jira, and engineers will not leave it to update an IT ticket. |
| You are happy on SaaS and do not want to staff a Jira admin for the service desk. | You need work items to sit next to software issues, deployments and incident channels you already have in Atlassian. |
| You may run SDP and Freshservice in parallel for a while and can use the documented connector for new tickets. | You are comfortable mapping SDP requests onto JSM request types and, if needed, Assets object schemas. |
| Your first-year scope is IT plus maybe one more workspace (HR or facilities), not a software-development mesh. | Change management has to talk to development (Premium is the more realistic JSM tier for formal change — see the pricing guide). |
Plan fit in published prices, checked Nov 8, 2026: Freshservice Growth ($49 / £40 per agent per month annually) if the new desk needs a catalogue, SLAs and assets but not problem and change; Pro ($99 / £79) if it does. JSM Free covers only three agents; paid Standard and Premium were $21.50 and $55.28 per agent per month at 75 agents on the USD calculator. A 20-agent Freshservice Growth licence is 20 × $49 × 12 = $11,760 (20 × £40 × 12 = £9,600); the equivalent JSM bill must come from Atlassian’s calculator because pricing is progressive. ServiceNow is not the destination this guide is about; if that is on the table, use our ServiceNow migration pieces instead.
A phased cutover, not a weekend switch
The plan below is how we run these projects. Durations depend on how customised SDP is and how much history you insist on moving; we do not invent day counts.
Phase 0 — Freeze the design, not the instance
Inventory edition, build, deployment, modules and add-ons. Count open requests, closed requests you want to keep, assets, knowledge articles and custom scripts. Write the mapping table (status, priority, template → destination field). Decide Freshservice versus JSM using the section above, and buy the destination plan that includes the modules you just listed (Growth versus Pro is the usual Freshservice fork).
Phase 1 — Stand up the new desk empty
Build the portal, request types or catalogue items, SLAs, groups, business hours and a short knowledge starter before you import history. An import into an empty, unconfigured desk just creates a second mess. Pause notifications and automations as Freshworks recommends before any load.
Phase 2 — Proof extract and proof import
Export a filtered list-view sample and pull the same records through the API including notes and attachments. Load them into a Freshservice sandbox or a JSM test project. Reconcile counts, spot-check five ugly tickets (approvals, huge attachments, custom fields, merged requests) and fix the map. This phase is where on-prem attachment URLs fail, and it is cheap to learn that now.
Phase 3 — Users and assets, then open work
Load requesters and agents, matching on email. Load assets and verify a sample of relationships. Import open requests and their conversations. Keep SDP as the system of record until the reconciliation report is signed.
Phase 4 — Bounded history, then dual-run
Import the closed history you agreed (for example 12 or 24 months), not “everything since 2014”, unless compliance truly requires it. If you need a period of dual running, the Freshservice SDP connector can sync new incidents and notes — that is its job — while you drain the SDP queue. Do not dual-run longer than you have the staff to watch both queues.
Phase 5 — Cutover and hypercare
Freeze SDP creates (or forward inbound mail to the new desk), import the delta, switch the portal and mail, and leave SDP read-only for an agreed period. Hypercare is answering “where did my ticket go?” and fixing the ten field mappings the sample missed. Decommission the on-prem server only after backups and export files are stored somewhere that is not that server.
Cutover checklist
- Inbound email, portal URL, chat or Teams/Slack bots, and any monitoring tools that currently raise SDP tickets via the API.
- Approvals in flight: finish them in SDP or recreate them, do not assume they travel.
- Stored reports and scheduled exports that finance or audit still run from SDP.
- Custom scripts and outgoing webhooks — inventory, then turn off on the SDP side so they cannot fire into production after mail has moved.
- A written rollback: how long SDP stays able to take mail if the new desk fails on Monday morning.
Risks that actually bite
- Attachment reachability. Freshservice’s bulk API and JSM’s CSV importer both want URLs they can fetch. On-prem file paths are not URLs. Stage attachments and test the largest ones against the 40 MB Freshservice cap.
- Custom scripts that nobody owns. They will not migrate. If they implement a control (for example, a mandatory CAB field), rebuild that control or accept the gap in writing.
- Asset identity. Serial numbers and asset tags are the usual match keys. Relationships (runs-on, used-by) need a second pass.
- Connector tasks mistaken for migration. A dual-run via the Freshservice connector will consume tasks on Pro or Enterprise. Estimate that separately so finance does not see a surprise add-on invoice.
- History for its own sake. Importing ten years of closed requests delays go-live and still leaves you searching SDP for the weird ones. Keep SDP read-only and import a bounded window.
Best for, and wrong choice when
A Freshservice landing is best when
You want a published-price SaaS ITSM desk, you will use the catalogue and (on Pro) problem and change, and you may want the documented SDP connector during dual-run. It is also the less surprising destination for IT teams that never used Jira.
A JSM landing is best when
Engineering already works in Jira and the service desk must sit next to software work items. Be honest about Premium if you need formal change or the virtual service agent, and about Assets object allowances if you intend to rebuild a CMDB.
Wrong choice when
You are leaving SDP only because an upgrade went badly, but you still need on-premises software and air-gapped attachments. Neither Freshservice nor JSM Cloud will give you that. In that case fix the SDP instance, or look at an on-prem destination, rather than forcing a SaaS migration you cannot complete.
Frequently asked questions
Can I export tickets from ServiceDesk Plus?
Yes. ManageEngine’s request list-view help, checked on Nov 8, 2026, says you can export requests from list view via Actions → Export Requests after selecting them. Classic and combined views are not the export path documented there. For notes, work logs and related records, use the REST API.
Does ServiceDesk Plus have an API?
Yes. The official REST API documentation describes a technician API key and /api/v3/ operations on requests, notes, work logs, conversations, attachments, technicians, requesters and several admin objects. The key follows the technician’s role and is removed if that login is disabled.
Is there a Freshservice importer for ServiceDesk Plus?
We did not find a native historical importer on Freshworks’ help pages. Freshworks documents a ServiceDesk Plus Connector that syncs new and updated incidents and service requests using recipes, and a partner bulk API that imports tickets and notes. Those are different jobs.
Can I use the Freshservice ServiceDesk Plus Connector to migrate?
Not as your primary historical move. The connector is designed to create, update and sync tickets and notes between the two live systems. It is useful during a dual-run. It consumes connector tasks and is not described as a bulk archive importer.
How do I import ServiceDesk Plus tickets into Jira Service Management?
Atlassian documents a CSV importer for JSM Cloud, including attachments by URL and a separate External System Import for parent-child hierarchy. You will need to export or API-extract SDP data into well-formed CSV first. There is no official “SDP to JSM” button on the pages we checked.
Should I choose Freshservice or JSM when leaving ServiceDesk Plus?
Choose Freshservice if you want a standalone IT service desk with published USD and GBP prices and an optional documented connector back to SDP. Choose JSM if your organisation already lives in Jira. Compare licence rows using the official pricing pages; do not pick the tool only because one per-agent number looks smaller.
Does ManageEngine publish ServiceDesk Plus prices in GBP?
Not on the pages we checked on Nov 8, 2026. The US pricing page lists US dollars and is current as of September 2026. The UK URL we opened still showed US dollar amounts. Pound figures in this article are indicative conversions from those official USD prices using the Bank of England rate described above.