Enable Sterling Omni-Configurator integration with WebSphere Commerce

Enable the Sterling Omni-Configurator integration with WebSphere Commerce by configuring Visual Modeler, Omni-Configurator, and WebSphere Commerce.


Before beginning

  1. Ensure that you meet the following system requirements:

    • Your Sterling Configurator server is running JDK 1.8.

    • Your Sterling CPQ 9.5 is using Fix Pack 7 (or later).

  2. If we are using a B2B store model, we must install WebSphere Commerce 9.0.0.7 (or higher).

  3. Download and install Sterling Visual Modeler.

  4. Deploy the Sterling Omni-Configurator.

    To verify that your Omni-Configurator is properly deployed, access any Omni-Configurator basic REST service URL. For example, https://configuratorServer:port/configurator/api/organization/matrix/models?language=en&country=US.


Procedure

Configure Sterling Visual Modeler.

  1. Create a storefront using the Sterling Configurator Visual Modeler tool. Notes:

    • Ensure that the correct product information is used for defining the models in the Sterling Configurator Visual Modeler by creating a storefront with the same Skin ID as the Organization Code of the catalog organization.

    • When creating a storefront, we must set the External Partner ID.

  2. Configure Sterling Visual Modeler to connect to Omni-Configurator.

    To view and test your compiled models, you need to connect the Omni-Configurator backend (REST APIs) and the Configurator UI to Sterling Configurator Visual Modeler.

    1. Open the Sterling Configurator Visual Modeler System Administration Console by accessing the following URL:

        http://hostname:port/Sterling/en/US/enterpriseMgr/admin

    2. Log in as a user with administrative authority.

    3. From the Fulfillment page, click System Services > Sterling Fulfillment, then complete the following fields:

      Field Description
      IBM Configurator System URL http://hostname:port/configurator
      IBM Configurator UI URL This URL path depends on how the Configurator UI add-on is deployed.

      • If it is deployed as an independent web application, then the URL is: http://hostname:port/context_root/index.html#

      • If it is deployed within an existing web application, then the URL is: http://hostname:port/context_root/path_to_the_Configurator_UI_folder/index.html#

      Note: If the Omni-Configurator REST APIs (configurator.war) and the Configurator UI add-on are deployed on different machines, then in such scenario we must configure the Configurator System URL in the index.html file present in the Configurator UI directory. If you don't perform this configuration, the sample Configurator UI is not launched from the Sterling Configurator Visual Modeler application.

    4. Click Save all.

Configure Omni-Configurator.

  1. Configure the tenant-specific Omni-Configurator adapter properties.

    We can define communications between Omni-Configurator and WebSphere Commerce by configuring Omni-Configurator adapter properties.

    1. Create a tenant_id.properties file in the tenant_repository/tenant_id directory.

      Where

        tenant_id
        Refers to the External Partner ID set in the Sterling Configurator Visual Modeler when creatingd the storefront.

    2. Configure the tenant-specific Omni-Configurator adapter properties. To connect to WebSphere Commerce, for example, if the tenant_id is matrix then define all the catalog and pricing adapter properties in the tenant_repository/matrix/matrix.properties file. The following code sample shows the properties file for the tenant matrix:

        //For catalog adapter
        cnfg.matrix.catalog.adapter.impl=com.ibm.commerce.omniconfigurator.catalog.adapter.impl.WCCatalogAdapter
        cnfg.matrix.catalog.provider.url=https://[wc-transaction-server-cmc:port]/lobtools/cmc/VisualModeler
         1 cnfg.matrix.catalog.provider.username=[adminuser]
        cnfg.matrix.catalog.provider.password=[adminpassword]
        cnfg.matrix.catalog.provider.orgcode=matrix
        cnfg.matrix.catalog.entitlement.provider.url=https://[wcssearch-server:port]

        //For Pricing adapter
        cnfg.matrix.pricing.adapter.impl=com.ibm.commerce.omniconfigurator.pricing.adapter.impl.WCPricingAdapter
        cnfg.matrix.pricing.provider.resturl=https://[wc-transaction-server:port]

        //Misc Properties
        cnfg.matrix..wcs.storeid = [the catalog storeId mapped to this tenant]
        cnfg.matrix..validation.customer.enabled=true
        cnfg.matrix..validation.allowguestcustomer.enabled=true
        cnfg.matrix..validation.currency.enabled=true
        cnfg.matrix..priceandentitlement.cache.additional.param.name=WC_USERACTIVITY,storeId,
          contractId,currency,identityId,identitySignature

      • 1 Create an Administrator user in WebSphere Commerce; for example, sterlingAdmin. For information about creating WebSphere Commerce users, see
        Creating a user. When we select a role for the user, add Site Administrator authority for the root organization.

  2. Deploy the Adapter JAR file and the dependency JAR file.

    1. Go to the following directory in the WebSphere Commerce Developer environment.

    2. Copy OmniConfigurator-WCAdapter.jar and jersey-client-1.19.1.jar to following directory on your Omni-Configurator server.

        tenant_repository/tenant_id

  3. Import the certificate from WebSphere Commerce.

    1. Log on to the WebSphere Application Server Administrative Console.

         https://hostname:port/ibm/console

    2. Go to SSL certificate and key management > Key stores and certificates > NodeDefaultTrustStore > Signer certificates > Retrieve from port.

    3. Complete the following fields.

      Field Description
      Host The host name of the WebSphere Commerce Transaction server.
      Port The port number for the WebSphere Commerce Transaction server.
      SSL configuration for outbound connection Select NodeDefaultSSLSettings
      Alias The alias for the WebSphere Commerce Transaction server.

    4. Click Retrieve signer information, then click Apply.

    5. Restart your Omni-Configurator server.

Configure WebSphere Commerce.

  1. Enable the Sterling Transport from the WebSphere Administration Console.

    1. Open the WebSphere Commerce Administration Console.

    2. Go to Configure > Transport.

    3. Configure the Sterling transport by completing the following fields.

      Field Description
      Sterling Organization Code The tenant ID found in Omni-Configurator.
      IBM Configurator API URL https://configuratorServer:port/configurator/api
      Visual Modeler User Name Your Visual Modeler user name.
      Visual Modeler Password Your Visual Modeler user password.
      Visual Modeler URL Visual Modeler storefront skin URL.

  2. Configure the Omni-Configurator server URL in your STORECONF database table by running the following SQL statement.

      insert into storeconf values ($storeId,'wc.configurator.url'$configuratorServerURL,1);

    Where

      storeId
      Your store ID. If the store is at the site level, use a 0 value.

      configuratorServerURL
      The Omni-Configurator server URL; for example:

      https://configuratorServer:port/configurator

  3. Enable the Sterling Configurator store function in WebSphere Commerce Management Center.

    1. Log on to Management Center and open the Store Management tool.

    2. Select the store; for example, AuroraESite. Then, click the Catalog tab.

    3. Click the Sterling Configurator check-box.

  4. Import the Omni-Configurator certificate to WebSphere Commerce.

    • For development environments:

      1. Log on to the WebSphere Application Server Administrative Console on the development environment.

      2. Go to SSL certificate and key management > Key stores and certificates > NodeDefaultTrustStore > Signer certificates > Retrieve from port.

      3. Complete the following fields.

        Field Description
        Host The host name of your Configurator server.
        Port The port number for our Configurator server.
        SSL configuration for outbound connection Select NodeDefaultSSLSettings
        Alias The alias for our Configurator server.

      4. Click Retrieve signer information, then click Apply.

    • For runtime or production environments:

      1. Export the Omni-Configurator certificate.

        1. Log on to the Sterling Configurator Administrative Console on the runtime environment.

        2. Go to SSL certificate and key management > Key stores and certificates > NodeDefaultKeyStore > Personal certificates > Extract certificate.

        3. Complete the following fields.

          Field Description
          Certificate alias to extract The certificate alias.
          Certificate file name The certificate file name.
          Data type Your data type, for example, Base64-encoded ASCII data.

        4. Click Apply.

      2. Import the extracted certification to the WebSphere Commerce Transaction Server by one of two ways:

        • Manage certificates manually.Notes:

          • When you copy the certificates to the JSON file, we must replace the line-break with \n to ensure that the entire certificate string is on one line.

          • This integration with Omni-Configuration uses one-way SSL certificate validation. For one-way SSL certificate validation, where one application needs a certificate to communicate with another application that has SSL enabled, you need only to define the issuing_ca in the JSON file.

          • Load the JSON files to the /SETUP/certs/custom directory of our Docker container.

        • Manage certificates with Vault.

What to do next