CRM migration
Field-level mapping, validation, and rollback between PBS Systems and Microsoft Dynamics 365 Sales . We move data and schema; workflows are rebuilt natively in Microsoft Dynamics 365 Sales .
PBS Systems
Source
Microsoft Dynamics 365 Sales
Destination
Compatibility
13 of 14
objects map 1:1 between PBS Systems and Microsoft Dynamics 365 Sales .
Complexity
BStandard
Timeline
48–72 hours
Overview
PBS Systems v10 APEX is a dealership management system designed around vehicle lifecycle management — integrating sales, service, parts, and accounting into a single database. Dynamics 365 Sales is a cloud CRM built on Dataverse that separates accounts, contacts, leads, and opportunities into structured relational tables with robust customization through custom tables, option sets, and Power Platform integration. The fundamental translation challenge is converting PBS's monolithic vehicle-centric records (which bundle customer, vehicle, deal, and F&I data in one screen) into separate Account, Contact, and Opportunity records with the vehicle as a lookup or custom entity. FlitStack AI extracts PBS data through direct database queries where API access is limited, transforms the dealership-specific schema into Dynamics 365's CRM model, creates custom tables for PBS-specific concepts like vehicle inventory units and service RO lines, and loads via the Dynamics 365 Web API with bulk parallelization for large dealership datasets. Workflows, F&I product rules, and CDK/ADP-style integrations built in PBS do not have Dynamics 365 equivalents — we export those definitions as configuration documentation for your implementation team to rebuild in Power Automate or Dynamics workflows. The migration carries all standard CRM objects (contacts, accounts, opportunities, activities, notes, attachments) plus PBS-specific vehicle inventory and service records as custom tables.
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
PBS Systems platform overview
Scorecard, SWOT, gotchas, and pricing for PBS Systems.
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 PBS Systems 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.
PBS Systems
PBS Customer (Retail Buyer)
Microsoft Dynamics 365 Sales
Contact + Account
1:manyPBS customer records contain both person and household data. We split into Dynamics 365 Account (for household or business buyer) and Contact (for the individual buyer). If PBS customer is a business, Account gets the business name; if consumer, Contact gets person fields and links to a default household Account.
PBS Systems
PBS Customer (Business Buyer / Fleet)
Microsoft Dynamics 365 Sales
Account + Contact
1:1Business-type PBS customers with company names, fleet accounts, or dealer-to-dealer transactions map directly to Dynamics 365 Account records. Primary buyer contact within the business maps as a related Contact with AccountId lookup. PBS fleet account terms and credit limits transfer as custom fields on the Account.
PBS Systems
PBS Vehicle (New/Used Unit)
Microsoft Dynamics 365 Sales
Vehicle__c (Custom Table)
1:1PBS vehicle records have no Dynamics 365 native equivalent. We create a Vehicle__c custom table with fields for VIN, stock number, year, make, model, trim, color, status (new/used/演示), location (lot or service bay), and acquisition cost. Vehicle__c links to Opportunity via a custom lookup field so each deal can reference the specific unit.
PBS Systems
PBS Deal (Vehicle Sale)
Microsoft Dynamics 365 Sales
Opportunity + Quote + Order
1:1A PBS deal record bundles customer, vehicle, trade-in, F&I products, and payment structure. We transform this into a Dynamics 365 Opportunity (core deal), a Quote (F&I product selections with pricing), and an Order (final deal structure if closed-won). The Opportunity gets the vehicle as a custom lookup, trade-in as a line item with negative amount, and F&I products as additional quote/order lines.
PBS Systems
PBS F&I Product Selection
Microsoft Dynamics 365 Sales
Quote Detail Line Items
1:1PBS F&I products (GAP, maintenance contracts, warranties, credit life) are stored as deal-level selections with pricing. These map to Dynamics 365 Quote Product line items. Each F&I product type gets a value-mapping entry to the corresponding product catalog item. If PBS F&I products don't exist in Dynamics, we create them as products before populating quote lines.
PBS Systems
PBS Trade-In Vehicle
Microsoft Dynamics 365 Sales
Quote Product (Negative Amount Line)
1:1Trade-in vehicles in PBS deals are separate records linked to the deal. We create a Quote Product line with the trade-in vehicle as a line item with a negative amount (the allowance). The trade-in VIN and year/make/model transfer as description text on the line. If PBS stores trade-in condition details, we preserve those in a custom field on the Quote Product.
PBS Systems
PBS Service Repair Order (RO)
Microsoft Dynamics 365 Sales
Service_RO__c (Custom Table) + Task
1:1PBS service ROs have no native CRM equivalent. We create Service_RO__c as a custom table with RO number, open/close date, status, advisor, technician, service type, labor hours, and total cost. Individual line items (parts used, labor operations) store in a related Service_RO_Line__c table. Open ROs generate a Task on the vehicle owner Contact for follow-up. Historical service records migrate as completed Service_RO__c entries.
PBS Systems
PBS Parts Inventory
Microsoft Dynamics 365 Sales
Product (Inventory) + Inventory_Transaction__c (Custom)
1:1PBS parts inventory consists of part numbers, descriptions, bin locations, on-hand quantity, and cost. We map parts to Dynamics 365 Product records with product type = Inventory. On-hand quantities and bin locations store in a custom Inventory_Location__c table linked to Product. Parts transactions (receiving, selling to RO, returning) migrate as Inventory_Transaction__c records for reporting continuity.
PBS Systems
PBS Parts Sale to RO
Microsoft Dynamics 365 Sales
Service_RO__c → Related Product Lines
1:1When a PBS parts inventory item is used on a service RO, we link the Product record to the corresponding Service_RO_Line__c entry. The part number, quantity used, and cost transfer as line item details. This preserves the parts cost breakdown within each service RO for F&I and service margin reporting.
PBS Systems
PBS Prospect / Internet Lead
Microsoft Dynamics 365 Sales
Lead
1:1PBS internet leads and showroom prospects tracked in the CRM module map directly to Dynamics 365 Lead records. Source of lead (website, walk-in, phone) transfers as a custom field. Lead status (new, contacted, sold, lost) maps via value mapping to Dynamics Lead Status options. If PBS stores lead scoring, we preserve it as a custom numeric field.
PBS Systems
PBS Activity (Call, Email, Meeting)
Microsoft Dynamics 365 Sales
Task / Email (Exchange)
1:1PBS records phone calls, emails, and meetings tied to customers and deals. Phone call logs map to Dynamics 365 Task records with Type = Phone Call. Emails can be stored as email Activities in Dynamics or linked to Exchange via server-side sync. Meetings map to Dynamics 365 Events with original start/end times and location preserved.
PBS Systems
PBS User / Employee
Microsoft Dynamics 365 Sales
SystemUser
1:1PBS staff records (salespeople, service advisors, parts counter employees) map to Dynamics 365 SystemUser records by email match. If PBS staff IDs are linked to deals and service ROs, we preserve the PBS staff ID as a custom field on the SystemUser for audit traceability. Unmatched PBS staff are flagged before migration — either invite to Dynamics or assign records to a fallback owner.
PBS Systems
PBS Dealership / Store Location
Microsoft Dynamics 365 Sales
Business_Unit__c (Custom Table)
1:1Multi-store PBS deployments require Dynamics 365 to distinguish between locations. We create a Business_Unit__c custom table with store name, address, and PBS location code. Accounts, Opportunities, and Service_RO__c records each get a Business_Unit__c lookup so reports can filter by store. Dynamics 365 Business Unit security roles can also be configured per location if needed.
PBS Systems
PBS Attachment / Document
Microsoft Dynamics 365 Sales
SharePoint / Attachment on Record
1:1PBS stores deal documents (contracts, F&I forms, service invoices) as attachments. We re-upload these to Dynamics 365 SharePoint integration if configured, or attach directly to the Opportunity/Service_RO__c record. File size limits apply — documents over 25MB are flagged for chunked upload or alternative storage reference.
| PBS Systems | Microsoft Dynamics 365 Sales | Compatibility | |
|---|---|---|---|
| PBS Customer (Retail Buyer) | Contact + Account1:many | Fully supported | |
| PBS Customer (Business Buyer / Fleet) | Account + Contact1:1 | Fully supported | |
| PBS Vehicle (New/Used Unit) | Vehicle__c (Custom Table)1:1 | Fully supported | |
| PBS Deal (Vehicle Sale) | Opportunity + Quote + Order1:1 | Fully supported | |
| PBS F&I Product Selection | Quote Detail Line Items1:1 | Fully supported | |
| PBS Trade-In Vehicle | Quote Product (Negative Amount Line)1:1 | Fully supported | |
| PBS Service Repair Order (RO) | Service_RO__c (Custom Table) + Task1:1 | Fully supported | |
| PBS Parts Inventory | Product (Inventory) + Inventory_Transaction__c (Custom)1:1 | Fully supported | |
| PBS Parts Sale to RO | Service_RO__c → Related Product Lines1:1 | Fully supported | |
| PBS Prospect / Internet Lead | Lead1:1 | Fully supported | |
| PBS Activity (Call, Email, Meeting) | Task / Email (Exchange)1:1 | Fully supported | |
| PBS User / Employee | SystemUser1:1 | Fully supported | |
| PBS Dealership / Store Location | Business_Unit__c (Custom Table)1:1 | Fully supported | |
| PBS Attachment / Document | SharePoint / Attachment on Record1: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.
PBS Systems gotchas
No public data export API for self-serve migration
Custom fields vary per dealership with no standard schema
Service history links to parts and technicians require careful relationship mapping
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
Assess PBS data model and export feasibility
FlitStack reviews your PBS instance to identify all CRM-relevant tables: customers, vehicles, deals, service ROs, parts inventory, prospects, activities, and user records. We document field-level schema for each table, identify relationships (customer-to-vehicle, deal-to-vehicle, RO-to-customer), and assess export method — direct database query, PBS API if available, or CSV export. For multi-store PBS deployments, we document which stores share a database and which are separate instances. This assessment produces a data inventory document used to plan the custom table creation in Dynamics 365 before any data moves.
Create Dynamics 365 custom tables and field schema
Before data loads, FlitStack creates the custom tables and fields needed for PBS-specific data in Dynamics 365 Sales. This includes Vehicle__c, Service_RO__c, Service_RO_Line__c, Inventory_Location__c, Inventory_Transaction__c, Business_Unit__c, and any custom fields on standard entities. We apply appropriate field types (text, number, currency, datetime, option sets), set field-level security, and configure the relationships between custom tables. If your Dynamics license is Professional, we audit the custom table count against the 15-table limit and prioritize by data volume.
Resolve PBS users to Dynamics 365 SystemUser records
FlitStack extracts PBS staff records and attempts to match each to a Dynamics 365 SystemUser by email address. For unmatched staff, we generate a discrepancy report listing the PBS staff ID, name, and role — your team resolves by either adding email addresses to PBS records, creating corresponding Dynamics users, or designating a fallback owner. This step gates the migration: no PBS staff record can own a Dynamics record without a matched SystemUser. We repeat the match attempt before each migration phase to capture any users added during planning.
Run sample migration with field-level diff
A representative sample of 100-500 records migrates first — spanning customers across business and retail types, vehicles with various statuses, deals at different stages, and service ROs. We generate a field-level diff comparing the source PBS values against the destination Dynamics values for every mapped field. You verify that vehicle-to-customer links resolve correctly, F&I products decompose into individual quote lines, service RO totals match the PBS original, and owner assignments are correct. Any mapping errors are corrected before the full migration runs. The sample also validates that Dynamics field-level security isn't blocking data writes.
Execute full migration with delta-pickup window
The full migration runs against Dynamics 365 using the Dataverse Web API with parallel batch operations sized to avoid throttling. The sequence follows Dynamics foreign-key constraints: Business Units first, then Accounts, Contacts, Leads, Vehicle__c records, Products, then Opportunities with vehicle lookups, then Service_RO__c with related lines, then Activities. A delta-pickup window of 24-48 hours after the initial load captures any PBS records modified or created during cutover. FlitStack logs every API operation to an audit table. One-click rollback reverts all records if reconciliation identifies data integrity issues beyond tolerance.
Platform deep dives
PBS Systems
Source
Strengths
Weaknesses
Microsoft Dynamics 365 Sales
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 PBS Systems and Microsoft Dynamics 365 Sales .
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
PBS Systems: Not publicly documented..
Data volume sensitivity
PBS Systems 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 PBS Systems to Microsoft Dynamics 365 Sales migration scoping. Not seeing yours? Book a call.
Walk through your PBS Systems 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 PBS Systems
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.