1 Launch Cloud Service Siebel CRM Integration
The prebuilt integration between Launch and Siebel CRM allows you to centrally manage product and services portfolio across your ecosystem. Launch serves as the primary source for catalog definitions, with Siebel CRM consuming these definitions. By using the prebuilt integration between the two applications, you can perform a one-time migration of catalog definitions from Siebel to establish them as the authoritative source in Launch.
Siebel customers can innovate faster by centrally managing their product portfolio for their entire eco-system, including Siebel CRM.
Once Launch is baselined with the catalog definitions, any new products or changes to existing ones are handled in Launch with automated distribution to Siebel CRM.
Related Guides
Table 1-1 contains information about other useful sources of information for the integration process.
Table 1-1 Related Guides
Reference | Description |
---|---|
Launch Cloud Service User's Guide | Describes how you can create, publish, and manage product offers. |
REST API Reference for Launch Cloud Service |
Provides the REST API reference document for Launch Cloud Service. |
Implement CX Industries Framework | Describes the setup and implementation of the CX Industries Framework required to deploy Launch Cloud Service. |
Siebel Update 21.12: Siebel CRM 2021 TOI: Product Administration APIs for Siebel Customer Order Management Functional Overview Siebel Update 22.5: Siebel CRM 2022 TOI: Pricing Administration Rest APIs for Siebel Customer Order Management Functional Overview Siebel CRM 24.11 Update Guide & Known Issues |
Describes the changes in the Siebel REST APIs supporting the integration. |
Supported Integration and Mapping
Table 1-2 lists the entities you can do a one-time migration to and publish. The table also lists the predefined mappings available to you in the JSON mapping file.
Table 1-2 Supported Integration and Mapping
Siebel Entity | Launch Entity | What can you sync? |
---|---|---|
Catalog |
Catalog |
Definition Category Association |
Category |
Category |
Definition Sub-categories Product Association |
Product Class |
Product Specification |
Definition Parent-Child Relationships |
Attributes |
Attributes |
Attributes Smart Part Number (user defined) |
Products (Simple and Customizable products) |
Simple Offer, Bundle Offer |
Definitions Category/Class/Product Line association (Catalog needs to be migrated before migrating Product) Prices and Adjustments – simple and Customizable products Volume Discounts for Simple products Compatibility and Eligibility Rules and Recommendation Discount Products (products with negative price) Customizable Product level price and Constraint Rules (six templates supported) |
Product Line |
Product Line |
Definition Product association Compatibility Rules |
Price list |
Price list |
Definition and its price list items Attribute Adjustments Aggregate discounts Volume discounts |
Promotion |
Package |
Definitions Category/Class/Product Line association (Catalog needs to be migrated before migrating Promotion) Components along with Aggregates and Option Class overrides Eligibility, Compatibility and Upgrade/downgrade Rules Commitment Terms |
Setting Up Launch Siebel CRM Integration
The following table lists the setup tasks you need to perform in Launch, Industry Framework, and Siebel for one-time migration from Siebel to Launch and subsequent publishing from Launch to Siebel.
Setup Task List
Table 1-3 lists the setup tasks you need to perform in Launch, Industry Framework, and Siebel for one-time migration from Siebel to Launch and subsequent publishing from Launch to Siebel.
Table 1-3 Setup Task List
No. | Application | Task | Mandatory? | Description |
---|---|---|---|---|
1. |
Industry Framework |
Create Integration User |
Yes |
This is required to facilitate the integration between the two applications. |
2. |
Launch |
Register destinations |
Yes |
This is required to configure the right spoke instance to receive the publishing events. |
3. |
Launch |
Configure Entity Profile |
Yes |
This is required to ensure that Launch can model catalog definitions based on Siebel. |
4. |
Launch |
Setup Default entities |
Yes |
This is required to meet the Launch requirement of Products and Services to have specifications. |
5. |
Industry Framework |
Configure the spoke systems |
Yes |
This is required to ensure to configure the spoke system instance for receiving publishing events. |
6. |
Siebel |
Create client credentials and security requirements |
Yes |
N/A |
7. |
Siebel |
Migrate Literature to Oracle Content Management |
No |
This is required only if images of devices, sales collaterals are associated to product definitions in Siebel. |
8. |
Siebel |
Identify the integrations to Product definitions that is required for integration |
Yes |
This is required to baseline Launch with the product definitions that are required for the one-time migration. |
9. |
Siebel |
Add the value Discount in Type dropdown loads under Administration - Product > Products tab |
Yes |
This is required to publish the Discount type offer correctly to Siebel. |
10. |
Siebel |
Validate Product definitions data |
Yes |
This is required to ensure the working of one-time migration and publishing. |
Setup Task Details
-
Create a new user on the security console with the user name FABRIC_SYSTEM_USER and the role Communications Catalog Administrator. If you have already created this as part of the Launch setup, no additional setup is required.
-
Register Destination in Launch for publishing to the Siebel instance. There are multiple Siebel instances such as Development, SIT, UAT, and Production, but you need to set up each instance individually for Launch in order to publish to the correct Siebel instance.
Configure destinations in Launch to appropriate life cycle status for which you would like to publish to external application. For example, you can configure a destination for test instance to the Ready to Publish life cycle status and configure one for production instance to the Active status.
While adding destinations, use
-
Name - The target pre-selection key from the Connection Descriptor in the Industry Framework.
-
Type - The target name used in the Catalog Sync configuration.
-
Internal - Set this to ON.
To create a Siebel destination:
-
Navigate to Launch user interface > Administration > Lifecycle Status.
-
Select the new lifecycle configuration version in the PENDING state.
-
Choose the Edit option for the In-design state and click Add Destination.
-
Provide the Name, Type, and Publish Sequence. Click Add.
Note:
Destination Name and Type should match the spoke system configuration in the CX Industries Framework. -
Select the Siebel destination name in the Destinations field and save it.
-
Choose the Activate option for the PENDING life cycle configuration version.
-
Verify that the new lifecycle configuration version changed to the ACTIVE state.
For more information on how to configure the Destination in Launch, see REST API Reference for Launch Cloud Service and "Publish Catalog Entities" in Launch Cloud Service Implementation Guide.Note:
The destination Name setup in Launch should be an exact match to the system descriptor creation using config.ms in CXIF. This helps in identifying the correct Siebel instance for one-time migration (“Source” field in migration job) and in the mapping for Publishing to the appropriate Siebel instance. Ensure that you use the same name for system parameter name in system Descriptors while applying the configuration in step 5 below. -
-
Set default entities for the Siebel entities in Launch for meeting the minimum requirement of integration. As part of the migration process, the following mandatory resources are created as default specification by default in Launch in case of migrated entities do not contain the same as part of the association.
-
Every Siebel simple product definition in Launch requires a product specification association in Launch regardless of whether it is of Device, Accessory, or Service type. In addition, every simple product of type requires a Service Specification association. Since Siebel allows you to create simple products without a class association and there is no notion of a Service Specification (CFS Spec), while doing the one-time migration, default entities are appended to the simple product in Launch.
For sample payloads, see "Appendix".
-
For migrating and publishing Siebel Aggregate discounts, you need to seed Launch with a custom profile specification having a criteria parameter – product offers and quantity.
For sample payloads, see "Appendix".
-
For migrating and publishing Siebel Eligibility rule, you need to add the following parameters using Common Business Configuration.
-
Country
-
State
-
City
-
Post Code From
-
Post Code To
For more information on adding lookup values using the extensibility framework, see Launch Cloud Service Implementation Guide.
-
-
Siebel CRM Attribute Adjustments are made available in Launch as Attribute based adjustments (ABP). Launch supports attributes from Product Specifications, Service Specifications and Customer Profile Specification characteristics to support Attribute based adjustments. Such definitions are published to Siebel CRM as Discount matrix with Class and Customer attributes. Since Siebel CRM does not support Service Specification based ABP, use product specifications and customer profile specifications to migrate the Discount matrix from Siebel CRM and subsequent publishing to Siebel CRM.
Note:
Ensure that the customer profile in Siebel CRM is synced to Customer Profile Spec before the initial migration. Refer to the "Appendix" for a sample payload.
-
-
Configure the Entity Profile to ensure that Siebel CRM supported product modeling is followed by Launch using the Entity Profile tile in Administration space.
No two applications are the same when it comes to modeling capabilities and so is the case between Siebel CRM and Launch. Though the result might be the same, the constructs might be different between the applications, and while integrating the applications, you need to factor in any restrictions of the target(spoke) application to ensure an error-free publishing of catalog definitions. Some of the common patterns between Siebel CRM and Launch can be classified as:
-
Both the applications having the same construct of capabilities and restrictions for an entity at par - for example, Catalog, Category, Product line entities, and so on.
-
Both the applications having minimal common capabilities and/or additional capabilities or restrictions in one and not in the other - for example, Siebel CRM and Launch can have commitment terms but Launch has the provision to configure multiple commitment terms to an offer, while only one commitment term is supported in Siebel CRM promotions.
Let's say we migrate the catalog definitions from Siebel CRM to establish them as the primary source in Launch.
Now, every simple product definition of Siebel CRM will have only one price type associated with it - one-time or recurring. Launch supports multiple price types to be associated to a single simple offer including support for usage type price and alterations, price based on relative effectiveness, and so on.
Should the migrated offer be enriched or revised to include any of the non-Siebel CRM supported constructs, the publish to Siebel CRM will fail.
So, when we migrate catalog definitions from Siebel CRM to establish them as the authoritative source in Launch and make changes to those entities, we need to ensure that publishing to Siebel CRM (being the order capture application) does not fail. This also applies to catalog definitions that are created in Launch. Hence, the need to have certain restrictions to be applied in Launch in line with Siebel CRM capabilities to have a successful publishing.
-
-
Configure your external application in the Industry Framework for each instance. For more information, refer to the topic Integrate External Applications to add a Spoke End Point in the article Implement CX Industries Framework, on My Oracle Support, Doc ID 2720527.1.
-
Create client credentials and security requirements for Siebel CRM. See Overview of Using Siebel REST API and Using REST API For Siebel Telco in the Siebel REST API Guide.
-
Migrate Literature to your content management system. This is an optional task and you require it if you want to migrate and publish content between Launch and Siebel CRM.
To view the literature and images in Launch after the migration, associate the Siebel CRM products using URL-based Literature records into content store. For Siebel CRM products that are associated with File-based Literature, move them to content store and create the URL-based Literature records. For more information on creating URL based Literature in Siebel CRM, see the chapter Literature in the Applications Administration Guide. You can find the required version of Siebel CRM documentation from the Oracle Siebel CRM Documentation page.
-
Identify extensions on product definitions that need to be part of the integration. This is necessary to plan for extensions to be made in Launch before you proceed with the migration. For more information on how to extend Launch application, see "Configure and Extend Launch" in Launch Cloud Service Implementation Guide.
- Launch simple offer with DISCOUNT product type gets published to Siebel with Type as Discount. Siebel OOB doesn’t provide Discount value in Type drop-down. So, make sure to add Discount value in Administration - Product > Products tab > Type drop-down before initiating publish of Discount offer to Siebel CRM.
-
Validate data for the migration of product definitions:
-
Ensure that the simple product have the right type to map it to the Product Offering types in Launch (Device, Accessory or Service). See the topic, Product Type and Service Type in this article.
The migration process uses the rules defined in the grammar file to decide the Launch product types. With OOB rules, simple products having one time price will be migrated as device and those with recurring price will be migrated as service. However, the integration process allows you to change the OOB rules by using extensions.
You need to pass a header X-User-Product-Type with value true, then classification of simple product types would be based on ‘Type’ drop-down field loads under Siebel UI Administration - Product > Products tab.
For example, to use Product Type or Service type as the fields to identify a Product as a device or service,- Ensure that all the simple products that you want to migrate have the Product Type or Service type set correctly.
- Update the default mapping rule to decide the Launch product type based on the values set in the Product Type or Service Type or both. For more details on how to handle extensions, see Handling Siebel CRM extensions.
-
Discount offers in Siebel are with negative amount that is mapped to Launch ProductOffering of type “DISCOUNT”. During migration, such discount offer pricing is set to 0 and a fixed discount with amount value provided in Siebel is created in Launch. Though the display shows negative amount in the Launch UI, while creating such Discount Type offers and publishing to Siebel they are converted to negative amount in Siebel.
-
Ensure that the product definitions have an effective start date. This is required in Launch as it drives the validity of associations to other entities.
-
All the versioned definitions of Siebel, that get published from Launch will set the released flag to true.
-
Any attribute with its domain type defined as “Enumerated” should have at least one value.
-
Customizable Products must have at least one component to migrate to Launch, otherwise the migration job will fail while creating bundle offers without components in Launch.
-
Ensure to turn on the Orderable flag while creating a product in Launch. This is required to make the product available in drop-down lists and dialog boxes in Siebel post publish.
-
Constraint Rules with below templates only are supported in Launch and hence migration job ignores any rules using unsupported templates.
- Require
- Require (mutual)
- Exclude
- Constrain attribute conditions
- Constrain attribute value
- Constrain relationship quantity
-
One-Time Migration and Publishing Process
You migrate entities from Siebel to Launch using a migration job in Launch in the same way as any import or export job. For more information, see Launch Cloud Service Implementation Guide.
Migration of Siebel entities is one-time to be used for onboarding a Siebel customer process with Launch being baselined with the Siebel Catalog definitions. Any further changes to the migrated catalog definitions in Launch and/or any new Catalog definitions are originated in Launch and distributed to Siebel using the Publish process.
When you publish an initiative, all the entities in the initiative are pushed to Siebel CRM. For more information on how you can publish your catalog entities to the spoke systems, see Launch Cloud Service Implementation Guide.
Publish will release all the Siebel versioned objects during the publish process for the below versioned objects:
- Product Class
- Attributes
- Product Definitions
- Promotions
Enrichment After Publishing
To enrich objects in Siebel CRM after they have been published in Launch, you need to lock the versions, enrich them, and then release them as a new version. You should do this only for entities that are not supported by the Launch-to-Siebel CRM publishing framework.
A few of these are:
- Product Class
- User Interface
- Linked Items
- Resources
- Scripts
- Display Name
- Properties
- Constraints
- Product
- User Interface
- Linked Items
- Resources
- Scripts
- Display Name
- Properties
- Constraint Rules (See "Setup Task Details".)
- Promotion
- Merge
- Split
- User Interface
Migration Job Parameters
You initiate a migration job in Launch using the Job Management tile’s External Jobs in Administration space.
To create an external job for migration, you need to provide the following information:
-
Name: A name for the migration job.
-
Source: The name of the source configured in Catalog Sync UI. The migration job identifies the rules for migration based on this. The out-of-the-box configuration uses the name ‘siebel’.
-
API: The migration API to be run. See "Migration API" for more information about the available API calls.
-
Query Parameters: The migration API uses query parameter values to fetch the entities from Siebel.
-
Header Parameters: Optional header parameters. For more information, see "Migration API".
Migration APIs
All API calls support migration of the Siebel CRM catalog entities using three options:
- Name match
- ID match
- Wild card search using Name
Table 1-4 contains a list of migration API calls with sample query parameters and their values.
Table 1-4 Migration APIs
Scenario | Siebel API | Query Parameter (Example) | Query Value |
---|---|---|---|
To migrate a particular Catalog entity |
/migration/catalog |
$.SiebelMessage['ListOfBase Catalog Admin']['Product Catalog'].Name |
Catalog Name |
To migrate a set of Product line entities |
/migration/product Line |
$.SiebelMessage.['ListOfSWI Admin Product Line'].['Admin Product Line'].searchspec |
[Name] LIKE ‘ProductLine Name1* OR [Name] LIKE ‘Name2*' |
To migrate a Product Class using its ID |
/migration/class |
$.SiebelMessage.ListOfSWIAdminISSClassDefiniti onIO.['SWI ISS Class VOD BusComp'].['VOD Id'] |
Product Class ID |
Table 1-5 contains the complete list of supported migration paths.
Table 1-5 Supported Migration Paths
Siebel API | What gets migrated |
---|---|
/migration/catalog |
Catalog and its associated categories |
/migration/attribute |
Top-level attributes |
/migration/class |
Product Class, its Attributes, Hierarchy, and Smart Part Num |
/migration/pricelists |
All Pricelists |
/migration/productLine |
Product line |
/migration/package |
Promotions will be migrated, but all components and references must be migrated separately. |
/migration/packageWithDependencies |
Promotions will be migrated with all of their dependencies. |
/migration/simpleOffering |
Products will be migrated as atomic product offerings without their references. The standard classification of simple product will be based on price Type. |
/migration/simpleOfferingWithDependencies |
Products will be migrated as atomic product offerings along with their references. The standard classification of simple product will be based on price Type. |
/migration/bundle |
Products will be migrated as bundle products without their references. Products will be migrated as Commercial Bundles by default. |
/migration/bundleWithDependencies |
Products will be migrated as bundle products with their references. Products will be migrated as Commercial Bundles by default. |
/migration/compatibilityAndMigrationRules |
Compatibility and migration rules associated with the Promotion and its components. |
/migration/productRecommendation |
Product Recommendation Rule associated with the Product |
/migration/ productCompatibilityRule |
Compatibility rules associated with the product |
/migration/aggregateDiscounts |
Aggregate Discounts |
/migration/entitlements |
Entitlement Templates |
/migration/packageWithDependenciesBulk |
Siebel Promotions migration in bulk |
Note:
You can change the Query parameters in the template file. For example, the productPOSTTemplate.json in the simpleOfferingWithDependencies API uses the searchspec to identify the product to be migrated. This can be changed to ID, Name, or any other field as required. searchspec can be a wildcard search and supports multiple fields.For more information on query payload and search specification, see the Siebel REST API guide. You can find the required version of Siebel REST API documentation on the Oracle Siebel CRM Documentation page.
The templates can be updated using the Update Template File API. For more information, see the topics Understand Entity Mapping and Rest APIs in this guide.
Table 1-6 contains the list of header parameters for the migration job:
Table 1-6 Header Parameters
Key | Required? | Description |
---|---|---|
X-Source-System |
yes |
Name of the source system; auto populated based on Source being selected |
X-Destination-System |
yes |
Name of the Destination system; auto populated to Launch |
X-Source-PreSelection |
yes |
The target pre-selection key configured in the Connection Descriptor in Industry Framework, pointing to the Siebel instance from which Catalog definitions needs to be migrated. |
X-User-Project-Name |
no |
If not provided, the migration job ID will be used for the Initiative Name. |
X-User-Project-Id |
no |
If not provided, the migration job ID will be used for the Initiative ID. |
Migration Process
The Launch-to-Siebel CRM integration supports two patterns of running the one-time migration job:
-
Top-down migration: You can migrate a single promotion or a set of promotions and all their references to the leaf level products, all product classes, and rules at the same time.
-
Bottom-up migration: You can migrate entity by entity, starting with the product class and its attributes and smart part number, followed by product definitions (even simple products first followed by customizable products), and promotions.