Legacy Data Import Process

Once you have your CPQ implementation all set, you will have to figure out a process to import legacy data. This could be importing data from another system into SFDC or importing data from another SFDC object (such as the old Quote object) into the CPQ setup.

First, let’s look at a simple general flow for creating legacy data. Usually people want their existing contracts to be in CPQ.

  1. Create new or use existing Opportunities.
    1. Before using existing Opportunities, create a new Legacy Amount field where you do an import of all the Amounts into this new field so that when CPQ takes over your Opp and Amount field, you have the old values to compare to.
  2. Create Quotes and Quote Lines on those Opportunities.
    1. Before importing Quotes, make sure your price rules are not active and you set the Quotes Status field to “Approved” and mark them as Primary.
    2. Before importing Quote Lines, make sure you have the correct products and product structure in mind. If you have bundles, you need to set the Required By field and the Product Option field. And the Option Level field.
  3. Close win the Opportunities.
  4. Check the Contracted checkbox on those Opportunities.

Below is a generic all inclusive data import process. If something does not apply to you, skip it and move on.

  1. Data Identification
    1. Identify Opportunities to duplicate.
      1. Only do this if existing Opportunities do not currently exist or existing Opportunities will be archived.
      2. Add the old Opportunities to the “Archive” step below.
    2. Identify Opportunities with Orders against them.
      1. A special couple imports need to happen for these Opportunities.
    3. Identify existing Opportunities to create current Contracts for.
      1. Identify old Product -> new Product mapping.
    4. Identify existing Opportunities to unsync from SFDC Quotes.
    5. Identify Opportunities to archive after the import process.
      1. Old renewal Opportunities.
      2. Opportunities that have Orders created against them.
  2. Create Import Files
    1. Unsync
      1. Create “Unsync” Opportunity import (Update) file.
        1. ID column = SFDC Opp ID
        2. Synced Quote column = blank
    2. Current Contracts
      1. Create CPQ Opportunity import (Insert) file (if needed).
      2. Create CPQ Quote import (Insert) file.
        1. Primary column = False
        2. Take data from SFDC Quotes.
        3. Take data from Opportunities (that don’t have SFDC Quotes).
      3. Create CPQ Quote Line import (Insert) file.
        1. Only do this if you have SFDC Quote Line Items or there are no Opportunity Products or existing Opportunity Products are not sufficient.
        2. Take data from SFDC Quote Line Items (if they exist).
        3. Take data from Pop Products (that don’t have SFDC Quote Line Items).
      4. Create “Contracted” Opportunity import (Update) file.
        1. ID column = SFDC Opp ID
        2. Contracted column = True
    3. Archive Old Renewals
      1. Create “Archive” Opportunity import (Update) file.
        1. ID column = SFDC Opp ID
        2. Status column = “Archived” -OR- use this file in a “Delete” Data Loader operation.
  3. Data Loader Import
    1. Turn off Price Rules.
    2. Turn off Product Rules.
    3. Set batch size to 1 in Data Loader.
    4. Import (Update) “Unsync” Opportunity import file.
    5. Import (Insert) CPQ Opportunity import file (if needed).
    6. Import (Insert) CPQ Quote import file.
    7. Create CPQ Quote Line import (Delete) file.
      1. Only do this if you have SFDC Quote Line Items or there are no Opportunity Products or the current Opportunity Products are not sufficient.
      2. Export Quote Line IDs with Data Loader.
      3. Import (Delete) CPQ Quote Line import file.
      4. Import (Insert) CPQ Quote Line import file.
    8. Opportunities with Orders
      1. Turn off Triggers in CPQ Package Settings.
      2. Create CPQ Primary Quote import (Update) file.
        1. Primary column = True
        2. Use Success output file from CPQ Quote import (Insert).
      3. Create CPQ “Primary Quote” Opportunity import (Update) file.
        1. Map Primary Quote field value to Primary Quote ids from file above.
      4. Import (Update) CPQ Primary Quote import file.
        1. Validate Opportunity and Opportunity Products
      5. Turn on Triggers in CPQ Package Settings.
    9. Opportunities without Orders
      1. Create CPQ Primary Quote import (Update) file.
        1. Primary column = True
        2. Use Success output file from CPQ Quote import (Insert).
      2. Import (Update) CPQ Primary Quote import file.
        1. Validate Opportunity and Opportunity Products
    10. Import (Update) “Contracted” Opportunity import file.
      1. Validate Contract and Subscriptions
    11. Import (Update) “Archive” Opportunity import file.
    12. Turn on Price Rules.
    13. Turn on Product Rules.

8 thoughts on “Legacy Data Import Process

Leave a Reply to Gaurang Patel Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.