Project Management migration
Field-level mapping, validation, and rollback between Sonderplan and Jira. We move data and schema; workflows are rebuilt natively in Jira.
Sonderplan
Source
Jira
Destination
Compatibility
6 of 10
objects map 1:1 between Sonderplan and Jira.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Sonderplan to Jira is a structural remapping: Sonderplan's booking-centric resource scheduling model (where Bookings tie a Resource to a Project with a status and custom fields) has no single Jira equivalent—Bookings become Issues, Resources become Jira Projects or Labels depending on type, and multi-schedule setups require a project hierarchy strategy decided during scoping. We sequence the migration by resolving parent-project references before child issue imports, export custom field schemas dynamically from a representative booking sample, and apply a deduplication strategy for shared resources that belong to multiple Sonderplan Schedules. Jira's free tier caps at 10 users, which affects the owner-resolution queue for large teams. Automations, reports, calendar feeds, Quotes, and Invoices do not migrate as functional code; we deliver a written inventory for admin rebuild.
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 Sonderplan object lands in Jira, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Sonderplan
Booking
Jira
Issue
1:1Sonderplan Bookings map to Jira Issues (Story, Task, or Bug depending on booking type). The booking's resource assignment becomes the Jira Assignee field; the project reference becomes the Jira Project. Booking status (Confirmed, Tentative, Cancelled) maps to Jira Status with a custom Status Category or a dedicated workflow. Booking start and end dates migrate to Due Date and a custom startdate__c field for timeline rendering. Custom fields on Booking migrate to Jira custom issue fields created during schema design. Orphaned bookings (referencing deleted resources) are flagged in a reconciliation report before import.
Sonderplan
Resource (Person)
Jira
User
1:1Sonderplan Resources of type Person map to Jira User accounts. We resolve by email match against the destination Jira site's user directory. Any Resource without an email or without a matching Jira User is held in a reconciliation queue; the customer's admin provisions the Jira account before the booking import phase. Jira's free tier caps at 10 users, which affects the provisioning scope for larger teams—this is surfaced during scoping and may require a Standard plan upgrade before migration.
Sonderplan
Resource (Room or Equipment)
Jira
Label or Project
lossySonderplan Resources of type Room or Equipment do not have a native Jira equivalent. We map them to Jira Labels (e.g., label:edit-suite-a, label:camera-body-5d) applied to the booking's parent Issue, with a naming convention agreed during scoping. For high-value or frequently booked equipment, we create a separate Jira Project per Resource Type and use Project membership as the room/equipment roster, then link booking Issues to that Project via a Project picker custom field.
Sonderplan
Schedule
Jira
Project
1:1Each Sonderplan Schedule maps to a Jira Project. The Schedule's name becomes the Jira Project name and key (e.g., SCHEDULE-NYC becomes NYC). Shared Resources belonging to multiple Schedules receive Labels from each Schedule namespace so that cross-schedule queries are possible. Multi-site configurations with separate Schedules per facility become separate Jira Projects under the same Jira Site, enabling org-level reporting across all facilities.
Sonderplan
Project
Jira
Epic
1:1Sonderplan Projects map to Jira Epics within the destination Project. The Epic's summary is the Sonderplan Project name; the Epic's description carries the project client and any custom field values. Bookings under that project become child Issues (Stories or Tasks) linked to the Epic via the Epic Link custom field. If the customer prefers flat structure, we create a Jira Project per Sonderplan Project instead of Epic-per-Project—this is decided during scoping.
Sonderplan
Contact (Client)
Jira
Label + Custom Field
lossySonderplan Contact records for clients do not map to a native Jira object. We create a client__c custom field of type Single-select (with options sourced from Sonderplan Contact names) and populate it on each Issue. If the customer uses Jira Service Management alongside Jira Software, contacts map to Customers in Jira Service Management. Email and phone from Sonderplan Contacts migrate as custom text fields on the client__c context.
Sonderplan
Quote
Jira
Issue + Attachment
1:1Sonderplan Quotes (billable line items with service, quantity, and rate) map to Jira Issues with a quote__c custom field capturing the total amount, and a PDF attachment holding the original Quote document. The line-item breakdown is preserved in the Issue description field as a formatted table. Full line-item schema mapping to Jira Software's Estimate feature (Premium tier) is documented for the customer's admin if they hold a Premium license.
Sonderplan
Invoice
Jira
Issue + Attachment
1:1Sonderplan Invoices map similarly to Quotes: Jira Issue with an invoice__c custom field capturing total amount and payment status, and the original Invoice PDF as a Jira Attachment. Partial payments and credits are recorded in a custom payment_status__c field. Invoicing-as-code does not migrate; the customer rebuilds billing workflows in Jira if needed.
Sonderplan
Custom Fields
Jira
Custom Issue Fields
lossySonderplan custom fields on Bookings (account-specific, discovered dynamically during export) map to Jira custom issue fields of equivalent type. Text fields become Jira Text Field; date fields become Jira Date Picker; numeric fields become Jira Number Field; dropdown fields become Jira Select List. We export all fields from a random sample of 50 Bookings and compare field sets to catch sparse custom fields before the full export. Jira field names are sanitized to remove special characters per Jira naming rules.
Sonderplan
Calendar Feed Exports
Jira
Not Migrated
lossySonderplan calendar feed exports (iCal-style) are a derived output of the underlying Booking data, not a primary data source. We export the underlying Booking records directly rather than the feed format, preserving full fidelity. The calendar feed itself is documented as a reconstruction task for the customer's admin using Jira's native calendar integration or an Atlassian Marketplace calendar app post-migration.
| Sonderplan | Jira | Compatibility | |
|---|---|---|---|
| Booking | Issue1:1 | Fully supported | |
| Resource (Person) | User1:1 | Fully supported | |
| Resource (Room or Equipment) | Label or Projectlossy | Fully supported | |
| Schedule | Project1:1 | Fully supported | |
| Project | Epic1:1 | Fully supported | |
| Contact (Client) | Label + Custom Fieldlossy | Fully supported | |
| Quote | Issue + Attachment1:1 | Fully supported | |
| Invoice | Issue + Attachment1:1 | Fully supported | |
| Custom Fields | Custom Issue Fieldslossy | Mapping required | |
| Calendar Feed Exports | Not Migratedlossy | Mapping required |
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.
Sonderplan gotchas
Flexible Billing adjusts mid-cycle for user/resource changes
Multi-schedule resource pools require careful deduplication
Custom field schemas vary per account and have no public schema reference
No publicly documented API rate limits or bulk endpoints
Jira gotchas
Unsupported workflow validators silently skipped during migration
Custom fields converted to flat text labels when migrating to non-Jira platforms
Historical status-change timestamps lost when exporting without a Marketplace plugin
Attachment import failures from oversized files and JQL reference corruption
Points-based API rate limits enforced on Jira Cloud apps from March 2026
Pair-specific challenges
Migration approach
Discovery and Jira edition assessment
We audit the source Sonderplan account across active Schedules, Resources (count by type: person/room/equipment), Bookings (total and date-bounded volume), Projects, Contacts, Quotes, Invoices, and custom field schemas. We pair this with a Jira edition assessment: free (up to 10 users, no custom fields on free), Standard ($7.75/user/mo, custom fields and projects included), or Premium ($10.50/user/mo, with Jira Software Estimates for quoting). The discovery output is a written migration scope, a Jira edition recommendation, and the owner count versus Jira user cap assessment.
Schema design and booking-to-issue mapping strategy
We design the Jira destination schema in a Sandbox org before any production migration. This includes creating Jira Projects (one per Sonderplan Schedule), custom issue fields (mapped from discovered Sonderplan custom fields), Labels for room and equipment resources, a custom client__c field for contacts, and the Epic-per-Project or Project-per-Project structure. We define the Resource-as-Assignee (people) and Resource-as-Label (rooms/equipment) strategy, and document the shared-resource deduplication approach. The schema is validated in Sandbox before production deployment.
Sandbox migration and reconciliation
We run a full migration into a Jira Sandbox using production-like data volume. The customer's project manager or operations lead reconciles record counts (Bookings in vs Issues created, Resources in vs Users plus Labels, Projects in vs Jira Projects), spot-checks 25-50 random issues against the source Sonderplan records, and validates the custom field population. Any mapping corrections happen here, not in production. The Jira admin reviews the Label namespace and confirms the shared-resource deduplication approach.
Owner and resource reconciliation
We extract every distinct Sonderplan Resource of type Person and match by email against the Jira destination site's User directory. Resources without a matching Jira User enter a reconciliation queue. The customer's Jira admin provisions any missing Users (activating them on the appropriate plan tier) before record import resumes. Room and equipment resources receive their Label assignments during this phase based on the agreed deduplication strategy.
Production migration in dependency order
We run production migration in record-dependency order: Jira Projects (from Schedules) first, then Jira Users (provisioned, validated), then Jira Epics (from Sonderplan Projects), then Jira Issues (from Bookings with Assignee, Labels, and custom fields resolved), then Quote and Invoice Issues (with PDF attachments). Each phase emits a row-count reconciliation report before the next phase begins. We use Jira's Bulk API for large issue batches with exponential backoff on rate limit responses.
Cutover, validation, and handoff documentation
We freeze Sonderplan writes during cutover, run a final delta migration of any records modified during the migration window, then enable Jira as the system of record. We deliver a written Quote and Invoice inventory document with line-item detail and PDF attachment references. We deliver the automation inventory documenting any Jira Automation rules that should be configured post-migration. We support a five-business-day hypercare window for reconciliation issues. We do not rebuild Sonderplan configurations as Jira Automations; that work is a separate engagement or an internal admin task.
Platform deep dives
Sonderplan
Source
Strengths
Weaknesses
Jira
Destination
Strengths
Weaknesses
Complexity grading
Standard Project Management migration. 3 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Sonderplan and Jira.
Object compatibility
3 of 8 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
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
Sonderplan: Not publicly documented.
Data volume sensitivity
Sonderplan 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 Sonderplan to Jira migration scoping. Not seeing yours? Book a call.
Walk through your Sonderplan to Jira migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Sonderplan
Other ways to arrive at Jira
Same-Project Management 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.