Publish PIM updates to Configured Commerce

  • Updated

Once your product data is fully complete and built out in Optimizely Product Information Management (PIM), you will want to publish your products to Optimizely Configured Commerce so they can be viewed on your website.

This is a several step process. First, you will log in to Configured Commerce and ensure that the jobs that handle the PIM publishing are set correctly and with the appropriate recurrence. When your products are fully built and customized, you will approve them from the PIM. Approved products become Published when the PIM jobs run.


Configured Commerce has five PIM jobs: PIM: Synch Setup Data, PIM: Refresh Published Products, PIM: Publish Approved Products, PIM: Establish New Products, and PIM: Sync Product Data.

  • PIM: Synch Setup Data is used early in the implementation process to pull in languages, websites, product relationships and product custom properties. This job should be run from a sandbox or production instance, not a partner QA site. It should be run when new languages, websites, relationship types, or product custom properties are added.
  • PIM: PublishApprovedProducts runs whenever you want Approved products to be pulled into the environment of your choice - either sandbox (early in the project) or production (once live). It pulls in products with an Approved status and updates the status in the PIM to Published. You can set this job as recurring or run on-demand.
  • PIM: RefreshPublishedProducts keeps non-production environments synced with the PIM as needed. It uses the lookback days parameter in the job to pull in products with a status of Published and into the environment you are running the job from. This can also be used for development environments. You can run this job on-demand or recurring.
  • PIM: Establish New Products pushes new products created in Configured Commerce over to the PIM.
  • PIM: Sync Product Data is an optional job used if you have any PIM properties configured as externally managed. This job should be setup to run on a recurring basis and sends data for these externally managed properties to the PIM. Use this article to learn more about externally managed properties.

Best Practices

You must decide how often you want the Publish and Refresh jobs to run. Optimizely recommends setting both the Refresh and Publish jobs to run overnight. This will likely involve a conversation with the team who manages Configured Commerce or the internal team who manages other jobs in Configured Commerce. You must also decide how far back to set the lookback days for the RefreshPublishedProducts job - this will likely correlate to how often the jobs are set to run.

Note that if you set the Refresh and Publish jobs to run overnight, any changes you make in the PIM for publishing or updating products will not show on your site right away; you will need to wait until the following day to see changes. However, setting the jobs to overnight will allow for better performance than setting the jobs to run more frequently. You will need to decide what this trade-off will look like for you and your team.

When the job to publish products runs, any fields with null values will replace any existing data in that field for that product.


Configured Commerce appSettings.config points to any environment, including a partner's QA environment. The PublishApprovedProducts job will only run if this setting points to a Configured Commerce sandbox or production environment. You can run the RefreshPublishProducts job in any environment because it uses a lookback days parameter to determine what product data to refresh.

The PIM's Active Publishing Environment setting determines the environment to which products will be published. It has two values: Sandbox and Production. Optimizely recommends completing implementation and testing with this setting set to Sandbox and switching to Production when you are ready to make the transition to the production site. You should only need to touch this setting once.

Set the connection type and recurrence for the PIM Publish and Refresh Jobs

  1. Log in to your Configured Commerce site.
  2. Go to Administration > Jobs > Job Definitions.
  3. Edit the job for which you want to set the Connection Type and Recurrence.
  4. Set the Connection to Internal.
  5. Scroll down to the Recurrence section and toggle the Run as a Recurring Job setting to Yes.
  6. Set an optional start date and end date.
  7. Set the recurrence based on minutes, hours, days or months.
  8. Click Save.
  9. Repeat this process for both jobs.

Set the Lookback Days for the PIM Refresh Job

  1. Go to Administration > Jobs > Job Definitions.
  2. Edit the PIM: Refresh Published Products job.
  3. Click the Parameters tab.
  4. Edit the LookbackDays parameter.
  5. Change the Default Value to the number of days you want this job to look back. This will only refreshed Published products within the designated time frame.
  6. Click Save.

Submit products from the PIM for approval

Only users with the Admin or Manager role can approve products to be submitted to Configured Commerce. All other users can submit products to the Admin or Manager role for approval. Once approved, products will be pulled into Configured Commerce using the PublishApprovedProducts job.

  1. Log in to the PIM site.
  2. Click Products
  3. Click the product number of the product you would like to submit for approval.
  4. Ensure the product status wheel is at 100%.
  5. Click Submit for Approval.

Approve products in the PIM

  1. Log in to the PIM site.
  2. Click Products.
  3. Click the product number of the product you would like to approve.
  4. Click Approve.

Keep sandbox and production in sync after go live

Follow these steps to ensure your sandbox and production sites are both up to date after publishing. Assume at this point that your Active Publishing Environment in the PIM is set to Production.

  1. Wait for the PublishApprovedProducts job to run, or run the job manually to ensure your production site is up-to-date.
  2. Run the RefreshPublishedProducts job, making sure the lookback days parameter matches when you last refreshed. Try to keep this low to minimize the volume of data that has to be potentially reprocessed.

You do not need to change any settings in Configured Commerce or the PIM; the Refresh job updates any products with the Published flag, regardless of environment.