Salesforce Data Migration


Salesforce Migration from ERP

Migrate Data from ERP to Salesforce CRM

Salesforce Migration is the hard work. Nobody wants to leave valuable data about customers in the old system and start with the empty new system, so we need to migrate this data. Migrate data to Salesforce your business data is very critical and challenging job. Your team needs the right strategy to succeed.

Nearly every enterprise must go through this hectic data migration process at some point in migrating data to Salesforce. Common challenges that arise during a Salesforce data migration include underestimating a project’s complexity, poor planning and not setting aside enough resources. If not quickly addressed, these problems can lead to slow user adoption at best and major customer relationship issues at worst.


What is Legacy ERP System?

Enterprise resource planning (ERP) is defined as the ability to deliver an integrated suite of business applications. It’s a business process management software that manages and integrates a company’s financials, supply chain, operations, reporting, manufacturing and human resource activities

A legacy ERP is outdated computing software, hardware, method, technology that is still in use The system still meets the needs it was originally designed for, but doesn’t allow for growth.


Perform Salesforce Data Migration from ERP?

There are a number of reasons your organisation might be reliant on older technologies or systems that don’t take full advantage of modern approaches.
Business-critical data may be stored and managed in ERP that are now outdated, but still in working order.

But the issues that may eventually arise include:

• Slow, lagging processes and lack of automation reduces a team’s productivity.
• Cost and risk of maintaining legacy systems running on obsolete technology.
• Growing skills gap when it comes to knowledge of working with legacy systems.
• Legacy systems are incompatible with the adoption of technology like AI and IoT.


Why you ma need CRM Migration?

Salesforce is a powerful platform, and much more than just a CRM – there’s Sales Cloud, Service Cloud, Marketing Cloud, Community Cloud and thousands of products on the AppExchange.

Below are the benefits of Salesforce while considering CRM Migration:

Why to Migrate data from ERP to Salesforce
decor blue
decor blue
01. Flexibility

Being cloud-based, Salesforce offers businesses more flexibility overall. A cloud-based service can meet that demand instantly, rather than undergoing a complex (and expensive) update to your IT infrastructure. This improved freedom and flexibility can make a significant difference to the overall efficiency of your organization. Salesforce also takes care of all logical and physical security, so there’s no need for you to worry about disaster recovery or maintaining backup servers.

02. Security

One of the most important aspects of businesses that use CRM is data security. Data security has been one of the focus points of Salesforce right from the beginning. This is very important as many CRMs do not pay attention to security issues related to a business’ data. Salesforce, however, has pre-installed security features that allow business owners to decide who within their organisation can access their data, making this a very reliable and secure software.

03. Mobility

Cloud computing allows mobile access to corporate data via smartphones and devices. It is a great way to ensure that no one is ever left out of the loop. Staff with busy schedules, or who live a long way away from the corporate office, can use this feature to keep instantly up to date with clients and co-worker. Through the cloud, you can offer conveniently accessible information to sales staff who travel, freelance employees, or remote employees, for better work-life balance.

04. Automatic upgrades

All of your applications are automatically upgraded to the latest version of Salesforce three times a year, without any rollout effort on your part.

05. Extend to your stakeholders

It’s easy to provide access to Salesforce via the various products and it enables your stakeholders (be it employees, partners, customers or suppliers) to engage with your business and each other without the need for different software applications or hardware.

Steps of Successful Salesforce Data Migration

Steps of successful Salesforce Data Migration

Data migration involves three steps:

  • Extract: The source data is processed and extracted.
  • Transform: Format mapping between Legacy System and Salesforce.
  • Load: The data is introduced into Salesforce using custom interfaces. Finally, it is ensured that migration has been successful and complete.
decor blue
decor blue
Salesforce Data Migration project from our portfolio

Make Migration a Separate Project – In the software deployment checklist, data migration is not an “export and import” item handled by a clever “push one button”. While this might seem pretty straightforward, it involves a change in storage and database or application. It is a complex activity, deserving a separate project, approach, plan, budget and team. An entity level scope and plan must be created at the project’s beginning, ensuring no surprises. In the context of the ETL (Extract, Load and Load) process, any data migration will involve at least the transform and load steps. This means that extracted data needs to go through a series of functions in preparation, after which it can be loaded in to a target location.

This is not an easy decision, though. The approach must be agreed upon and communicated to all business and technical stakeholders so that everybody is aware of when and what data will appear in the new system.

Estimation – As described earlier, Data Migration is very complex activity which need resources, planning and modern tools. In many scenarios team needs to perform same task multiple time due to several environment specific errors. Estimation should also include the middleware software/tool license costing (e.g. Informatica Cloud Data Wizard, Jitterbit, SQL Servers etc.)

Salesforce Data Migration factors

Below are the factors which needs to be considered when migrating data to Salesforce:

Mapping of Objects – It signifies the number of tables need to migrate data to Salesforce. It is also advisable to check if Salesforce out-of-box objects can be used or custom objects needs to be created. Creating custom object is an additional development work and it may increase estimation.
Mapping of Fields – The number of columns of table needs to map with Salesforce Object fields. More number of fields in a table, more will be the effort to map and load.
Number of Lookup or Master-details fields – The most challenging part of data migration is to create/map correct parent child relationship. The more number of lookups/master-details fields, the more will be complexity of the data migration.
Compatibility of Data – Compatibility of data includes the format of the fields/column. It is always advisable to check if Salesforce supports all the field formats available in legacy system. If not, need to check for the alternative ways which may require format conversion or data transformation. it increases effort and plays key role in estimation.

Quality of Data – Data quality in legacy system is one of the key factors in Data migration. Legacy systems may contain data from past which is not used or supported in current days e.g. old currencies, old address formats, old phone number formats etc. These data may not seem complex in the beginning, but can create issues when trying to map to Salesforce Object fields.

For example, in legacy system, there can be User records without email address but in Salesforce, email is mandatory to create a User.

Poor quality of data imposes a significant cost to post migration maintenance with issues ranging from poor business intelligence to delay or disruption in business processes. It is always advisable to refactor old data before planning to migrate data to Salesforce. And data which can not be refactored should be communicated to stockholders prior to data migration.


Automate the process – automation means less human interactions, which leads to lesser errors. Errors directly impact quality and integrity of the Data in destination system. Using modern ETL tools, such as Jitterbit, Informatica Cloud Data Wizard, Starfish ETL, Midas and the like, can reduce the effort, increase quality of data. Almost all modern ETL tools supports automation, where you can schedule the migration, transform the data of different formats and also do data clean-ups based on certain criteria.

Data migration may involve large number of data where rows can be in millions or more. It is almost impossible for a human being to do entire migration manually. It is also possible that Legacy system uses more than one data servers and data needs to be transformed before coming to Salesforce. To make data migration smooth and streamed line, Salesforce offers different APIs which can be used to build integration between ETL Tools and Salesforce. These ETL tools gives us flexibility to transform the data into a usable format, and load the data from all of these sources into Salesforce.

Data load may need to be done in different phases, and we have to repeat the same action multiple times. Making it automated, does not cost more effort. Automation gives us the flexibility to reuse the existing process such as data transformation, integration, clean-ups etc.


Preparation of Salesforce Data Migration

Data Selection – Data selection is the first and most important step in a migration process. In the preparation phase, you need to identify the data which needs to be migrated to Salesforce. Data needs to be identified for the business processes which you have built in Salesforce. For example, most information related to sales processes is likely to be stored in a Customer Relationship Management System tables. Ideally, Customer Service agents will be processing service tickets in the same system, but this will not always be the case. If Customer Service Teams do not work on the same system as Sales agents, some more business data will be found in the Customer Service tool they use. Other teams could be working with different tools too, so it is very important to identify which data is being used by which process or team and vice-versa.

You need to identify Salesforce objects which will store data from legacy system tables. Salesforce offers many out-of-box objects such as Account, Contact, Opportunity, Case, Task etc. You can utilize it if it fits to the business process. Or may create custom objects in Salesforce to store these data.

Salesforce out-of-box objects can be found in Object Manager to simplify CRM Migration:

Data TypeUsage
Auto NumberA system-generated sequence number that uses a display format you define. The number is automatically incremented for each new record.
FormulaA read-only field that derives its value from a formula expression you define. The formula field is updated when any of the source fields change.
Roll-Up SummaryA read-only field that displays the sum, minimum, or maximum value of a field in a related list or the record count of all records listed in a related list.
Lookup RelationshipCreates a relationship that links this object to another object. The relationship field allows to click on a lookup icon to select a value from a popup list. The other object is the source of the values in the list.
External Lookup RelationshipCreates a relationship that links this object to an external object whose data is stored outside the Salesforce org.
CheckboxAllows to select a True (checked) or False (unchecked) value.
CurrencyAllows to enter a dollar or other currency amount and automatically formats the field as a currency amount. This can be useful if you export data to Excel or another spreadsheet.
DateTo enter a date or pick a date from a popup calendar.
Date/TimeTo enter a date and time, or pick a date from a popup calendar. When users click a date in the popup, that date and the current time are entered into the Date/Time field.
EmailTo enter an email address, which is validated to ensure proper format. If this field is specified for a contact or lead, users can choose the address when clicking Send an Email. Note that custom email addresses cannot be used for mass emails.
GeolocationTo define locations. Includes latitude and longitude components, and can be used to calculate distance.
NumberTo enter any number. Leading zeroes are removed.
PercentTo enter a percentage number, for example, ’10’ and automatically adds the percent sign to the number.
Phoneo enter any phone number. Automatically formats it as a phone number.
PicklistTo select a value from a list you define.
Picklist (Multi-Select)To select multiple values from a list you define.
TextTo enter any combination of letters and numbers.
Text AreaEnter up to 255 characters on separate lines.
Text Area (Long)Enter up to 131,072 characters on separate lines.
Text Area (Rich)Formatted text, add images and links. Up to 131,072 characters on separate lines.
TimeLocal time. For example, “2:40 PM”, “14:40”, “14:40:00”, and “14:40:50.600” are all valid times for this field.
URLWebsite address. When users click on the field, the URL will open in a separate browser window.
Text (Encrypted)Combination of letters and numbers and store them in encrypted form.

Steps of Data Mapping – Following steps need to be performed for each table/object identified for data migration. Let’s use Accounts and their Contacts for example.


1. Get sample data from Legacy System. Data should be in Comma-Separated Values (CSV) format. Here we are using sample Account data from a Legacy System:


2. Map columns of the CSV with Salesforce Object fields. If field format doesn’t match system will automatically throw error. There are multiple tools which can be used to load data in Salesforce. E.g. – DataLoader, Workbecnh, Salesforce Import Export Wizard etc. Here is an example of data mapping using


3. Mapping between parent and child records using unique identifier – Child records need parent Salesforce record Id for its Lookup or Master-Details field. This can be done by getting both child and parent records in CSV, then load Account records in Salesforce, get their Salesforce Ids and map these Ids with Contact using V-Lookup. But we can do this more simply by loading Accounts with their unique Account Number field. This field can be used as a parent reference, so when loading Contacts, we simply use the Account Number as a pointer to the parent Account. To find and map the Parent record dynamically, we may use “Lookup via” functionality of Below are the example steps to dynamically get parent Account Salesforce record Id using Account Number (Unique):


Click Lookup via checkbox and choose field for mapping

DatalLoader will try to find exact matching account number and map Account ID field with related Account Record Id.


Quality Assurance of Salesforce Data Migration

Once data has been transferred to Salesforce, you will need to ensure that all data has been transferred correctly, i.e. all data has been transferred with the correct format and relationships between the different objects are reflected accurately in Salesforce.

If the result of your Quality Assurance test is not successful, you will need to find in which phases errors happened. In some cases, you may need to iterate on the whole process.


CRM Migrations Risks/Considerations

There are several Salesforce features which may surprise you during Data migration. Below points need to be considered for a successful Data Migration:

1.Inactive User
2.Generate new password and notify User
3.Account Team Member, Account Sharing Object and Opportunity Partner
4.History of field values
5.System Fields
Need Help Migrating to Salesforce?
Send Message
Follow Us

Austin, TX 78759, USA