---
schema_version: "1"
id: de215afda7f199309f2f64f77cebd2fd051658938b92c3853fb170b465611e22
title: Pre-Migration Steps to Complete Your Migration
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/xcloud/264-0-0/os_pre_migration_steps_oma.md
canonical_url: https://help.salesforce.com/s/articleView?id=xcloud.os_pre_migration_steps_oma.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: 648ebd5c41dc515b0139deda3c090a85989a126e86aeac8faed8014d55a8e24c
description: Before you start the migration by using the Omnistudio Migration Assistant, complete these manual steps.
products:
  - Omnistudio
release: "264"
---
# Pre-Migration Steps to Complete Your Migration

Before you start the migration by using the Omnistudio Migration Assistant, complete these manual steps.

**Update Custom Apps Built Using FlexiPages**

After migrating to Omnistudio standard runtime, FlexiPages built for the managed package runtime don’t work with standard runtime components. These pages include Flexcards, utility Lightning web components (LWCs), tabs, and other layout elements.

If your custom app uses FlexiPages such as those used for Quote, Order, and Opportunity objects in Industries CPQ, you must replace the legacy components with the standard Flexcard component.

To make sure that your Flexcards load correctly when on the standard runtime, update these FlexiPages (for example, in the Industries CPQ app):

- DefaultCPQQuoteRecordPage
- Default\_Opportunity\_CPQ\_Record\_Page
- DefaultCPQOrderRecordPage

To update FlexiPages:

1. Go to the record page (Order, Quote, or Opportunity) inside your Industry CPQ App or any custom FlexiPage that you developed.
2. Click **Setup**, select **Edit Page** to open the Lightning App Builder.
3. Search and select the legacy Flexcard component. For example, Order Header.
4. Note down the name of your Flexcard from the component's property pane.
5. Click **Delete** to delete the component.
6. From the **Components** tab, under **Standard**, drag **Flexcard** to the canvas where the legacy component was located.
7. Set the name of the Flexcard to match the deleted legacy Flexcard component name.
8. Follow the same steps for all your legacy Flexcard components on the FlexiPage.
9. Save your changes, and activate the page.
10. Follow the same steps for all affected FlexiPages in your custom app.

**Update Custom Implementations**

These manual steps ensure that custom Omniscript flows are fully compatible with Omnistudio standard runtime:

- Remote class calls: Manually append the namespace for any remote class calls used within Omniscripts, Integration Procedures, and Flexcard.
    
    1. From the App Launcher, find and select **Omniscripts**, **Integration Procedures**, or **Flexcards**.
    2. Select the component that you want to update.
    3. Select the Remote Action element in your canvas, and go to the **Properties** pane.
    4. In the **Remote Class** field, append the remote class with Vlocity Industries managed package namespace. Example, `vlocity_cmt.CpqAppHandler`.
- Redirect URLs: Update redirect URLs configured in the Omniscript to align with the Omnistudio standard runtime configurations, if necessary.
    
    1. From the App Launcher, find and select **Omniscripts**.
    2. Select the Omniscript that you want to update.
    3. Select the Navigate Action element in your canvas, and go to the **Properties** pane.
    4. Click **Edit**, and update the **Type**, **Sub Type**, **Language**, and **Fields to Prefill Omniscript** fields with the standard Omniscript details.
- Nested Omniscripts: If an Omniscript invokes another Omniscript, ensure that the invoked configuration is updated for Omnistudio standard runtime compatibility.
    
    1. From the App Launcher, find and select **Omniscripts**.
    2. Select the parent Omniscript that you want to update.
    3. Select the Navigate Action element in your canvas, and go to the **Properties** pane.
    4. Click **Edit**, and update the **Type**, **Sub Type**, **Language**, and **Fields to Prefill Omniscript** fields with the standard Omniscript details.
- Conditional logic: Update conditional blocks where API response structures differ between the standard and package Flexcards or Integration Procedures.
    
    1. From the App Launcher, find and select **Omniscripts**.
    2. Select the Omniscript that you want to update.
    3. Select the Remote Action element in your canvas, and go to the **Properties** pane.
    4. Expand **Conditional View** and verify whether the condition added matches with the response you get from the Remote Action block. If it doesn’t match, update the condition based on the response on the Remote Action.
- Data Mapper references: Verify the compatibility of all referenced Data Mappers. If a Data Mapper doesn’t work as expected, create a Data Mapper with the same configuration in the Omnistudio standard runtime setup.
- Utility LWC files: Verify that all utility LWC files referenced under Omniscripts or Flexcards have the correct namespace appended. The Omnistudio Migration Assistant handles this, but verification is required. If it is not there, append the namespace. Example, vlocity\_cmt.
    
    1. From the App Launcher, find and select **Flexcards** or **Omniscripts**.
    2. Select the component that you want to update.
    3. Select the LWC Component element in your canvas, and go to the **Properties** pane.
    4. Verify the **Lightning Web Component Name** field for the namespace.

**Update Simple Flexcard UIs**

Ensure actions and data sources in simple Flexcards are correctly linked to the standard runtime:

- Integration Procedure and JSON path updates: If the associated Integration Procedure was updated, for example, variable names changed due to reserved keywords, manually revise the JSON paths in the Flexcard’s data source section. See [Reserved Words](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_naming_conventions.htm&type=5&language=en_US).
    
    1. From the App Launcher, find and select **Flexcards**.
    2. Select the Flexcard that you want to update.
    3. In Setup, expand **Datasource**, and update the **Result JSON Path** field with the new variable name that you updated in the Integration Procedure.
- Omniscript action URLs: Update Omniscript URLs configured in any Flexcard Action buttons to align with the standard runtime URL structure.
    
    1. From the App Launcher, find and select **Flexcards**.
    2. Select the Flexcard that you want to update.
    3. Select the Action element in your canvas, and go to the **Properties** pane.
    4. Expand **Action** and update **Action Label**, **Action Type**, **Flyout Type**, **Flyout**, **Layout Type** based on the standard runtime Omniscript configuration.
- Flexcard actions: Recreate or update Flexcard actions to ensure they’re correctly linked and run as expected in the Omnistudio standard runtime.

**Update Custom LWC and Integration Procedure Calls**

These manual steps ensure external invocations and embedded components function correctly in the standard runtime:

- Custom LWC components: If the custom LWC uses Omnistudio components, update any embedded Omniscript URLs to the standard runtime URL format, as the managed package URL no longer works.
- Invoking Integration Procedures: If a remote method was created by using an Integration Procedure, manually append the namespace under the remote method definition in both the Flexcard and Omniscript.
- Data Mapper flow: The Omnistudio Migration Assistant handles namespace updates within the Data Mapper. However, you should manually verify the entire Data Mapper flow to make sure that all functions operate as expected. See [Supported Functions for Data Mapper and Integration Procedure](https://help.salesforce.com/s/articleView?id=xcloud.os_omnistudio_data_mapper_and_integration_procedure_functions.htm&type=5&language=en_US).

If your custom LWCs use `util.getDataHandler()` to invoke Integration Procedures, this method do not function correctly after migration to the standard runtime. You must manually refactor these calls before proceeding to Migrate mode:

- Replace the utility call with an Apex Connect API wrapper. Create an Apex class that invokes `ConnectApi.OmniIntegrationProcedures.execute` and call that class from your LWC.
- Install the `@omnistudio/omniscript_customization` npm package (v254.0.0 or later) and utilize the `OmniscriptActionUtilsForCore` utility.