CRM migration
Field-level mapping, validation, and rollback between Textline and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
Textline
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
5 of 9
objects map 1:1 between Textline and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Textline to Microsoft Microsoft Dynamics 365 Sales is a structural migration from a communications inbox into a full CRM. Textline organizes around a Contact's phone number with Conversations threaded by time, while Microsoft Dynamics 365 Sales uses Accounts, Leads, Contacts, and Opportunities with Activities on the Contact timeline. We extract the Textline Address Book as Contacts, resolve the phone-number-to-contact lookup, and write conversation history as timestamped Activity records linked to the Contact. Multi-number Departments (Textline's phone-line groupings) map to Dynamics 365 Teams with business unit scoping. Custom address book fields migrate as typed Dynamics 365 fields (text, picklist, date) that we pre-create before the record import phase. Textline Automations, Routes, Announcements, and Metrics do not migrate as code or dashboards; we deliver a written inventory of each for the customer's admin to rebuild in Microsoft Dynamics 365 Sales or Power Automate. We do not provide post-migration admin support, training, or workflow rebuild as standard scope.
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.
Source platform
Textline platform overview
Scorecard, SWOT, gotchas, and pricing for Textline.
Destination platform
Microsoft Dynamics 365 Sales platform overview
Scorecard, SWOT, gotchas, and pricing for Microsoft Dynamics 365 Sales .
Data migration guide
The complete Microsoft Dynamics 365 Sales migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Destination checklist
Microsoft Dynamics 365 Sales migration checklist
Pre- and post-cutover tasks for moving onto Microsoft Dynamics 365 Sales .
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Textline object lands in Microsoft Dynamics 365 Sales , including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Textline
Contact (Address Book)
Microsoft Dynamics 365 Sales
Contact
1:1Textline Contact records from the Address Book map to Dynamics 365 Contact. The phone number field becomes Telephone1 or MobilePhone on Contact depending on whether it is the primary or SMS-capable number. Email, name, tags, and notes migrate directly. We use the phone number as a secondary dedupe key alongside email to avoid creating duplicate Contact records when the same person has multiple phone lines in Textline.
Textline
Conversation
Microsoft Dynamics 365 Sales
EmailMessage + Task
1:manyTextline conversations are the primary migration object. Each SMS thread maps to a series of Activity records on the Contact timeline. We map each message as either an EmailMessage (for two-way text threads that resemble email behavior) or a Task with a custom sms_direction__c field (inbound/outbound) and a custom sms_content__c field holding the message body. Timestamps and agent attribution are preserved. The Contact is resolved by matching the conversation phone number to Telephone1 or MobilePhone on the Contact record.
Textline
Department
Microsoft Dynamics 365 Sales
Team + Business Unit
lossyTextline Departments group phone lines by location or function. Dynamics 365 does not have a direct Department object at the Contact level, but we map Departments to Teams (for agent grouping and security role assignment) and optionally to Business Units (for org-chart-level isolation on larger deployments). The phone-number-to-department assignment migrates as a custom field textline_department__c on Contact for reference and reporting.
Textline
Agent
Microsoft Dynamics 365 Sales
User
1:1Textline Agents map to Dynamics 365 Users. Agent name and email resolve by email match against the destination User table. Agent-department assignments migrate as Team memberships or as the textline_department__c field on the User record. Permissions and custom roles are documented for manual recreation in Dynamics 365 Security Roles and Field Level Security because these are role-based access control models with different primitives than Textline's agent permissions.
Textline
Custom Address Book Field
Microsoft Dynamics 365 Sales
Custom Field (on Contact)
lossyCustom fields on Textline Contacts (Standard and Pro plans) map to custom fields on the Dynamics 365 Contact entity. We pre-create all custom fields in the Dynamics 365 field designer before migration, matching field types (text to Single Line of Text, dropdown to Option Set, date to Date Only). Field-level security is configured to ensure the migration user can write to all custom fields during import. This phase adds one to two days to the timeline per custom field batch.
Textline
Tag
Microsoft Dynamics 365 Sales
Text (multiple) or Option Set
lossyTags on Textline Contacts migrate as a multi-select option set or a comma-delimited text field on the Contact record. The customer chooses the strategy during scoping. Tags used for contact classification migrate as a Dynamics 365 Option Set with the tag values as allowed values; tags used for loose categorization migrate as a text field textline_tags__c for maximum flexibility.
Textline
Message Template
Microsoft Dynamics 365 Sales
Email Template
1:1Textline canned reply templates migrate to Dynamics 365 Email Templates. Template body text and shortcut codes export from Textline and are re-authored as Dynamics 365 Email Templates with merge fields in the {{fieldname}} format compatible with Dynamics 365 template syntax. We document the shortcut code to merge field mapping so the customer's admin can verify template behavior post-migration.
Textline
Announcement
Microsoft Dynamics 365 Sales
Campaign + Campaign Member
1:1Textline Announcements (bulk outbound messages) map to Dynamics 365 Campaigns with an inventory document delivered separately. We export announcement history, contact lists used, and message content. In Dynamics 365, the customer creates a Campaign, adds the target Contacts as Campaign Members, and uses Power Automate or a third-party SMS integration (TrueDialog, Twilio via Azure Functions) to send the equivalent outbound messages. We do not send messages from the customer's Dynamics 365 instance as part of migration scope.
Textline
Attachment (MMS)
Microsoft Dynamics 365 Sales
Note + Annotation
1:1MMS attachments referenced in Textline conversation messages export as annotation records in Dynamics 365. We preserve the attachment URL from Textline if the file remains accessible via the Textline API, or we note inaccessible attachments that require re-upload. Dynamics 365 Notes with Annotation store file references or base64-encoded content inline depending on file size.
| Textline | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| Contact (Address Book) | Contact1:1 | Fully supported | |
| Conversation | EmailMessage + Task1:many | Fully supported | |
| Department | Team + Business Unitlossy | Fully supported | |
| Agent | User1:1 | Fully supported | |
| Custom Address Book Field | Custom Field (on Contact)lossy | Fully supported | |
| Tag | Text (multiple) or Option Setlossy | Fully supported | |
| Message Template | Email Template1:1 | Fully supported | |
| Announcement | Campaign + Campaign Member1:1 | Fully supported | |
| Attachment (MMS) | Note + Annotation1: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.
Textline gotchas
API access requires Standard or Pro plan
HIPAA compliance is a paid add-on with separate configuration
Conversation export requires per-conversation manual action
Routes are not exposed via the public API
Custom address book fields are tier-gated
Microsoft Dynamics 365 Sales gotchas
Professional tier 15-table custom table limit blocks migrations
October 2024 pricing increase applies at renewal for all customers
Custom fields must be created in the UI before API writes
Power Platform request limits apply to bulk migrations
Activity records orphaned to inactive owners fail silently
Pair-specific challenges
Migration approach
Discovery and plan tier verification
We audit the Textline source account for plan tier (Essentials/Standard/Pro), API access availability, Contact count, conversation volume, custom address book field list, active Department groupings, and Tags taxonomy. We confirm whether HIPAA configuration is active. For Dynamics 365, we review the target org's entity schema, existing security roles, and any validation rules that could block import. The discovery output is a written scope document with record counts, object mapping table, and a Dynamics 365 field creation checklist for any custom fields missing in the destination.
Custom field schema creation in Dynamics 365
We create any missing custom fields on the Contact entity in Dynamics 365 before the record import phase. Field types are mapped from Textline (text to Single Line of Text, dropdown to Option Set, date to Date Only). We configure default values, required flags, and field-level security so the migration user has write access. Field creation happens in a Sandbox org first for validation. If the destination org already has the required custom fields, we validate the field names and types against the Textline source fields during scoping and adjust the mapping table accordingly.
Contact and Agent export and resolution
We export Textline Contacts from the Address Book API including all standard fields, tags, and custom address book fields. Agent records export separately for User mapping. We run phone-number-to-contact resolution to identify duplicates, using email as the primary dedupe key and phone number as the secondary. Any duplicate contacts are flagged for the customer's admin to resolve before the conversation import phase. Agent records are matched by email to existing Dynamics 365 Users; any Agents without a matching User go to a reconciliation queue for the admin to provision.
Conversation export with pagination and rate-limit handling
We export Textline conversation history in batches of 50 using the per-conversation API endpoint with exponential backoff. Each message record is enriched with the resolved Contact ID from the contact resolution phase, timestamp, direction (inbound/outbound), agent attribution, and MMS attachment references. The export phase runs with checkpointing so that a stalled export can resume from the last confirmed conversation without re-fetching. We target a maximum of 500 conversation exports per hour to avoid triggering Textline's undocumented rate limits. For accounts with fewer than 5,000 conversations, this phase completes within one business day; larger accounts require three to five business days.
Production migration in dependency order
We run production migration in the following order: custom fields (if not already present), Contacts (with AccountId resolved), Activities (conversation messages mapped to Tasks with custom SMS fields), Attachments (MMS files as Notes), Message Templates (as Email Templates), and Announcement history (as Campaign metadata). Each phase emits a row-count reconciliation report. We use the Dynamics 365 Dataverse Bulk API for large record batches with batch chunking and exponential backoff. Activity timestamp ordering is preserved so the Contact timeline reflects the original conversation sequence.
Cutover, validation, and automation rebuild handoff
We freeze Textline writes during the cutover window, run a final delta migration of any conversations modified during the migration window, then confirm Dynamics 365 as the system of record. We deliver the Automation and Routing inventory document to the customer's admin team with recommended Power Automate equivalents. We do not rebuild Textline Automations or Routes as Dynamics 365 Flows or Queue rules inside migration scope; that work requires a separate engagement or internal admin rebuild. We support a five-business-day post-cutover window for reconciliation issues raised by the customer's team.
Platform deep dives
Textline
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. All 8 core objects map 1:1 between Textline and Microsoft Dynamics 365 Sales .
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Textline and Microsoft Dynamics 365 Sales .
Object compatibility
All 8 core objects map 1:1 between Textline and Microsoft Dynamics 365 Sales .
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
Textline: Not publicly documented.
Data volume sensitivity
Textline 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 Textline to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your Textline to Microsoft Dynamics 365 Sales migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Textline
Other ways to arrive at Microsoft Dynamics 365 Sales
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.