Skip to content

IFS CPQ Integration

The purpose of this page is to provide details needed to set up IFS CPQ integration. This CPQ solution is provided by integrating IFS Cloud with an external application. Following are the main areas requiring configuration.

  • IFS Connect setup for integration with CPQ
  • Integration parameter configuration required for CPQ business flows
  • Single Sign-On (SSO) setup
  • Integration user setup
  • Managing CPQ users
  • Launching CPQ

IFS Connect

The necessary IFS Connect elements for IFS CPQ are already available with minimal configuration to do.

The Routing Address must be updated with CPQ API client credentials provided during provisioning for the respective CPQ customer environment. This setup is required to invoke REST API calls to CPQ within business flows.

  1. Navigate to Rest Addresses page in IFS Cloud.
  2. Select the routing address Routing_Addresses_CPQ.
  3. Update the following fields in the REST Address Data section.
    • Client Id
    • Client Secret

More on IFS Connect here.


Integration Parameters

Integration Parameters are required to execute business flows in CPQ.

Follow the below steps to configure Integration Parameters.

  1. Navigate to Integration Parameters for CPQ page.
  2. Edit and configure the required parameter values.

The following parameters must be configured.

  • MANUFACTURER_ID – CPQ environment name / customer name
  • URL_DOMAIN – Custom domain created in CPQ for SSO
  • ADMIN_CONTACT_ID – ID of an admin user in CPQ used for user management
  • CPQ_END_USER_ROLE – Role assigned to standard users in CPQ
  • CPQ_DESIGNSTUDIO_USER_ROLE – Role assigned to design studio users in CPQ
  • CPQ_SERVICE_USER – The integration user that is connected to the IFS_cpq IAM Client used for invoking IFS APIs externally

The parameter values for MANUFACTURER_ID, URL_DOMAIN and ADMIN_CONTACT_ID must be fetched from CPQ after configurations are done. The paramters CPQ_END_USER_ROLE, CPQ_DESIGNSTUDIO_USER_ROLE will have default values to which roles in CPQ will be created. If different names are used in CPQ, then integration parameters should be updated. The parameter CPQ_SERVICE_USER will have the default value of CPQ_SERVICE_USER which is created at the installation level.


Integration User

An IAM client named IFS_cpq is available for the external CPQ app to access IFS APIs such as CPQ Configuration Service.

This client must be used by CPQ to obtain access tokens when communicating with IFS APIs.

An integration user CPQ_SERVICE_USER is linked to this client and granted required projection access. In the previous release, granting access to companies and sites for this user had to be manually performed via User Companies and Sites Per User pages. In this release, this flow is enhanced to automatically add companies and sites when a user connects companies and sites to a configurator model. When users visit the Configurator Model Connection Rules page, select a configurator model and add a connection rule for the model by adding a company and site, those will be automatically reflected in User Companies and Sites Per User pages.


Users and Permissions

Assign Permission Sets

IFS CPQ supports two permision sets for the below user roles.

  • Standard User → CPQ_User
  • Admin User → CPQ_ADMIN

Follow the below steps to assign the relevant permission set.

  1. Navigate to User page.
  2. Open User Permissions subpage.
  3. Go to Direct Grants tab.
  4. Click Grant Permission Sets.
  5. Select the appropriate permission set.

Note: Ensure the user has a valid email address, Enable IFS Login set to Yes and a linked person record.

Create CPQ Users

Users must be created in CPQ prior to using the solution. The IFS CPQ solution will only be enabled for active CPQ Users.

Note: Ensure ADMIN_CONTACT_ID integration parameter is configured before proceeding.

Follow the below steps to Manage CPQ Users.

  1. Navigate to CPQ Users page.
  2. Add a desired user you want to grant access to.
  3. Enable Design Studio User toggle if design studio priviledges are required in CPQ. Design Studio User is granted access to create and set up configurator models.
  4. If you need to have an admin user with permissions to change various settings in CPQ, select the user and click Grant Admin Access command. This operation can only be performed by an application level administrator.

    After adding users. User status will be the following:

    • User Status → Created
    • Synchronization Status → Out of Sync
  5. After you add all the desired users click Synchronize Users to:

    • Create users in CPQ
    • Synchronize existing users

Disable / Enable Users

  • Disabling a user → Archives the user in CPQ
  • Enabling a user → Unarchives the user in CPQ

Configuration During Provisioning

Additional configurations are required during CPQ provisioning. These are typically handled by a CPQ consultant.

This includes:

  • Setting up Auth0 connection for SSO
  • Whitelisting IFS domains to enable loading CPQ in IFS Cloud plugin
  • Configuring webhooks and other configurations to invoke IFS APIs

Single Sign-On (SSO)

This integration supports Single Sign-On (SSO), allowing users to authenticate once in IFS and automatically gain access to CPQ using Authorization Code Flow.

To set up SSO the following configurations are needed.

Auth0 Connection in CPQ

An Auth0 connection must be configured to exchange authentication tokens between IFS and CPQ. This will be done as part of provisioning.

An IFS IAM Client with direct access grants and OIDC discovery URL is required.The standard IAM Client IFS_cpq_auth_sso is used for this purpose.

You will need to provide CPQ with:

  • Client ID
  • Client Secret
  • OIDC Discovery URL

The OIDC discovery URL follows this format:

https://<BASE_URL>/auth/realms/<NAMESPACE>/.well-known/openid-configuration

Note: The OIDC configuration endpoint must be publicly accessible.

In the scenario of IFS environment primary url is not publicly exposed and the SSO connection is done using the secondary url which is publicly exposed, but during a SSO validation request if the issuer validation points to the primary url and authentication doesn't succeed, then disable the issuer validation from the environment's admin console.

Custom Domain in CPQ

This step also should be performed during provisioning.

A custom domain needs to be created in CPQ, and this domain needs to be linked to the above configuration done in Auth0. Any request routing through this sub domain will be validated for a valid IFS Authentication token.

All requests routed through this csutom domain will validate IFS authentication tokens. This custom domain will be used by IFS Cloud when loading CPQ via the plugin, so that a logged in IFS Cloud user will be able to access CPQ without logging into CPQ.

  1. Navigate to System Settings in CPQ.
  2. Go to Platform custom domain & authentication section.
  3. Add a custom domain with:
    • SSL certificate
    • SSO enabled

Note: The configured custom domain must be updated in the URL_DOMAIN integration parameter to enable SSO in the IFS plugin.


Launch CPQ

Ensure all configurations are completed before proceeding with the launch.

Prerequisites

  • URL_DOMAIN parameter is correctly configured
  • Browser cookies are enabled
  • Above integration configuration steps are done

Steps to Verify

  1. Log in using a configured CPQ Admin user.
  2. Navigate to CPQ Management → CPQ Setup → Configurator Setup for CPQ
  3. You should see the Configurators page loaded within the IFS plugin, automatically authenticated using IFS credentials.