CRM migration
Field-level mapping, validation, and rollback between Dispatch and Mailchimp. We move data and schema; workflows are rebuilt natively in Mailchimp.
Dispatch
Source
Mailchimp
Destination
Compatibility
12 of 12
objects map 1:1 between Dispatch and Mailchimp.
Complexity
BStandard
Timeline
24–72 hours
Overview
Dispatch stores field-service records: contacts with associated companies, job assignments, service notes, and technician dispatch data. Mailchimp models everything as contacts within audiences, with merge fields replacing custom properties and tags standing in for role-based or job-status classifications. The migration carries Dispatch contacts, company names, email addresses, phone numbers, and physical addresses into Mailchimp subscribers. Custom fields built in Dispatch (such as fleet identifiers, service territories, or preferred contact windows) migrate as Mailchimp merge fields so segmentation by that data remains intact. Job and work-order records have no direct Mailchimp equivalent — those are exported as CSV for reference or rebuilt as tags or audience segments. We use Dispatch's API to pull contact and company records in bulk, resolve owner-to-email mappings, deduplicate on email address, and load into Mailchimp audiences via the Mailchimp API with merge field pre-creation handled before import. Original create dates, phone numbers, and address data are preserved in corresponding Mailchimp merge fields to maintain historical accuracy. Tags are applied for job status, service type, and priority so Mailchimp segments can reflect service history. After the initial load, a 24–48 hour delta pickup captures any contacts or job updates added in Dispatch during the migration window, ensuring the final Mailchimp audience reflects the most recent state.
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 Dispatch object lands in Mailchimp, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Dispatch
Contact
Mailchimp
Subscriber
1:1Dispatch contacts migrate directly as Mailchimp subscribers within the target audience. Email address is the unique identifier; contacts without email are flagged for manual review before import. Standard fields (first name, last name, phone, address, company) map to Mailchimp merge fields. When multiple contacts share an email, the most recent record is retained and duplicates are reported.
Dispatch
Company
Mailchimp
Audience / Merge Field
1:1Dispatch company records become merge field data attached to contacts in Mailchimp — COMPANY_NAME maps to a merge field. If splitting by company into separate Mailchimp audiences, each company generates a segment or a distinct audience. Company details domain and industry map to merge fields. For contacts with multiple companies, the primary company fills the COMPANY field and other names are stored in a merge field as a comma-separated list.
Dispatch
Job / Work Order
Mailchimp
Tag / Segment
1:1Jobs have no Mailchimp equivalent. We export job records as CSV for reference and apply job status or service type as Mailchimp tags on the associated contact so segmentation by service history remains possible. Job priority and assigned technician are also turned into tags, such as TECH_ASSIGNED:JohnDoe, and the most recent job number is stored in a merge field, enabling filtering by urgency and service rep.
Dispatch
Custom Field (contact-level)
Mailchimp
Merge Field
1:1Every Dispatch custom field on a contact (territory, preferred_contact_window, fleet_id, etc.) requires a corresponding Mailchimp merge field to be pre-created before data loads. Merge field type (text, number, date, phone) is inferred from Dispatch's field data type. We audit all Dispatch custom fields, consolidate duplicates, and prioritize them for Mailchimp merge field creation. If the total exceeds Mailchimp's 40‑field limit, we split contacts into separate audiences by company or territory.
Dispatch
Custom Field (company-level)
Mailchimp
Merge Field
1:1Company-level custom fields in Dispatch (billing_region, service_contract_type) map to contact-level merge fields in Mailchimp so the data is queryable per subscriber. Each company field's data type determines the merge field type (text, number, date). If many company-level fields exist, we prioritize those used for segmentation and store the rest in a JSON‑encoded text merge field for future reference.
Dispatch
Service Note / Call Log
Mailchimp
Note / Tag
1:1Dispatch service notes are exported as CSV with the contact email as the link. Key note content is summarized as tags (e.g., INSTALL_COMPLETE, MAINTENANCE_VISIT) in Mailchimp so marketers can filter by service history. Note timestamps are kept in the CSV and optionally loaded as a date merge field. For contacts with multiple notes, the most recent note drives the primary tag while older notes remain in the exported file.
Dispatch
Technician / Owner
Mailchimp
Tag
1:1The Dispatch technician or owner assigned to a contact's job becomes a tag on the Mailchimp subscriber — TECH_ASSIGNED:{technician_name} — enabling segmentation by service representative for follow-up campaigns. If a job has multiple assigned technicians, each name is added as a separate tag. The technician name is also stored in a text merge field for rep‑based reporting, and contacts without an assigned tech receive a generic UNASSIGNED tag.
Dispatch
Attachment / File
Mailchimp
Mailchimp Content Studio
1:1Dispatch job attachments (photos, signed forms, equipment images) have no Mailchimp equivalent. We download and re-upload to Mailchimp Content Studio if images are needed for campaign content; otherwise they are exported as a file package for reference. Attachments are renamed with contact email and job number and uploaded to Mailchimp Content Studio. A link is stored as a merge field, and a tag (e.g., ATTACHMENT_PROVIDED) is added to the subscriber.
Dispatch
Contact Role / Association
Mailchimp
Tag
1:1Dispatch contact-to-job roles (Primary Contact, Billing Contact, Site Supervisor) map to Mailchimp tags so segmented campaigns can target specific roles within a service relationship. Each role is translated to a distinct tag such as ROLE_PRIMARY, ROLE_BILLING, ROLE_SITE_SUPERVISOR. Contacts with multiple roles receive multiple tags, allowing campaigns to personalise content based on the recipient’s function. Role tags are combined with service‑type tags for granular targeting.
Dispatch
Contact Status (Active/Inactive)
Mailchimp
Subscriber Status
1:1Dispatch contact status values map to Mailchimp subscriber statuses — Active migrates as subscribed, Inactive or archived as unsubscribed, ensuring GDPR-compliant status in Mailchimp. Bounced or cleaned addresses are imported as unsubscribed to protect deliverability, while pending double‑opt‑in contacts are loaded as ‘pending’ if your Mailchimp audience supports that status. All status changes are logged for audit and reconciled with Dispatch’s last‑modified date.
Dispatch
Job Priority
Mailchimp
Tag
1:1Job priority (Emergency, High, Standard, Low) is applied as a tag on the associated contact so service-critical accounts can be identified for urgent campaign outreach. Each priority level becomes a distinct tag such as PRIORITY_EMERGENCY, PRIORITY_HIGH, PRIORITY_STANDARD, PRIORITY_LOW. The most recent priority is stored in a merge field for reporting, and contacts without a priority receive a default tag DEFAULT_PRIORITY. This lets marketers filter audiences by urgency.
Dispatch
Address (contact-level)
Mailchimp
Merge Field / Address Field
1:1Dispatch contact address fields (street, city, state, zip, country) map to Mailchimp's native address merge fields, enabling location-based segmentation in Mailchimp without custom merge field setup. If a contact has multiple addresses, the primary address fills the native address field and secondary addresses are stored in a text merge field as JSON. Address components are validated before import to avoid malformed records.
| Dispatch | Mailchimp | Compatibility | |
|---|---|---|---|
| Contact | Subscriber1:1 | Fully supported | |
| Company | Audience / Merge Field1:1 | Fully supported | |
| Job / Work Order | Tag / Segment1:1 | Fully supported | |
| Custom Field (contact-level) | Merge Field1:1 | Fully supported | |
| Custom Field (company-level) | Merge Field1:1 | Fully supported | |
| Service Note / Call Log | Note / Tag1:1 | Fully supported | |
| Technician / Owner | Tag1:1 | Fully supported | |
| Attachment / File | Mailchimp Content Studio1:1 | Fully supported | |
| Contact Role / Association | Tag1:1 | Fully supported | |
| Contact Status (Active/Inactive) | Subscriber Status1:1 | Fully supported | |
| Job Priority | Tag1:1 | Fully supported | |
| Address (contact-level) | Merge Field / Address Field1:1 | Fully 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.
Dispatch gotchas
API export endpoints gated by Dispatch360 tier
Work Order history split across open and closed states
Custom fields require discovery mapping before import
Attachment extraction requires separate file-store access
Mailchimp gotchas
Contact count includes unsubscribed and non-subscribed records
Automation workflows cannot be exported
Account suspensions trigger silently during migration
Template HTML is Mailchimp-specific and may not render in other platforms
E-commerce data requires active store connection
Pair-specific challenges
Migration approach
Audit Dispatch data model and pre-create Mailchimp merge fields
Before any data moves, we export the full Dispatch object schema — contacts, companies, custom fields, and active jobs. We count custom fields per object, check for duplicate field names across objects, and generate a Mailchimp merge field creation checklist. Merge fields are pre-created in your Mailchimp audience via the API so the import can write directly without type-mismatch failures. This step also identifies contacts without email addresses or with duplicate emails, which are flagged for your team to resolve before the migration run.
Pull Dispatch contacts, companies, and job history via API
FlitStack AI authenticates to Dispatch using API credentials with read-only scope. We export all contact records, company records, active and recent jobs (configurable lookback window, default 24 months), and service notes linked to contacts. The export runs in batches to respect Dispatch API rate limits. Each record is tagged with its Dispatch internal ID, create date, and last-modified date for traceability. Owner/technician records are exported separately for email-to-technician mapping.
Resolve technician and owner emails, deduplicate on email address
Dispatch job records reference technician and owner names rather than email addresses. We match technician names against the Dispatch user list by email and surface any unmatched technicians before migration. For contacts, we deduplicate on email address — if the same email appears multiple times in Dispatch, we keep the most recently modified record and surface duplicates in a deduplication report. Suppression-list contacts (unsubscribed, bounced) are identified if Dispatch tracks this status.
Transform and load sample set with field-level diff
A representative sample — typically 200–500 contacts spanning multiple companies, service types, and contact statuses — is migrated first. We generate a field-level diff showing the source Dispatch field value and the destination Mailchimp merge field value for every mapped field. You review the diff to confirm tag logic (job status, service type, priority), merge field content, and company name population. No full run commits until the sample is approved.
Run full migration with delta-pickup and audit log
The approved field mapping executes in batches against the Mailchimp API. A delta-pickup window (24–48 hours after initial load) captures any Dispatch records modified during the migration window — new jobs, updated contact info, or status changes. FlitStack AI logs every operation: records created, updated, skipped (duplicate), or flagged. One-click rollback reverts all Mailchimp changes if reconciliation fails. A final audit CSV is delivered with Dispatch IDs, Mailchimp subscriber IDs, and merge field values for every record migrated.
Platform deep dives
Dispatch
Source
Strengths
Weaknesses
Mailchimp
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 1 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 Dispatch and Mailchimp.
Object compatibility
1 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
Dispatch: Not publicly documented.
Data volume sensitivity
Dispatch 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 Dispatch to Mailchimp migration scoping. Not seeing yours? Book a call.
Walk through your Dispatch to Mailchimp migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Dispatch
Other ways to arrive at Mailchimp
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.