top of page
Search

Synchronize OrderCloud Catalogs Across Environments from Sitecore XM/XP in One Click

  • Writer: Yassine Alahyane
    Yassine Alahyane
  • 3 minutes ago
  • 2 min read

July 8th 2025


I've often seen people in the Sitecore community asking for ways to sync OrderCloud catalogs across environments. What if I told you I just built a simple, one-click UI that lets you sync a source environment to one or multiple destinations.

Syncing to multiple destinations happens in parallel and asynchronously for maximum efficiency.

This tool is also open source, so you can easily customize and adapt it to fit your specific needs.


How to install:

  1. Clone this Repo.

  2. Add Alyas.Feature.CatalogRefresh project to your XM/XP Solution in Visual Studio.

  3. Update Alyas.Feature.CatalogRefresh.Config with your OrderCloud settings and for the environments that apply to you:

  4. Publish the project

  5. Choose a target SQL DB to hold the new 'CatalogRefreshHistory' table and run the script here to create the table.

  6. Add 'AlyasCatalogRefreshDb' connection string to your App_Config/ConnectionStrings.config. this Connection string should target the DB where you created the table above.

  7. Install this package in your Sitecore 'Core' DB using the Sitecore installation wizard. This package will add a button to your Launchpad to allow you to access the UI.



How to Use:

P.S: Before you kick off the Sync Please make sure you disable any webhooks you have set up in OrderCloud during this process, to avoid over-consuming OC Resources.


  1. Locate and click on the new 'Catalog Refresh' button in your Sitecore Launchpad:

  2. Select Source Environment:

  3. Select one or multiple Destination Environments (I intentionally excluded PROD from Destination list as a safety measure. you can add it if needed):

  4. Click 'Start Refresh'. A new line should be added and display Status 'Processing'. You should also see a Stopwatch showing progress as below. Once completed, the Status will change to 'Success' with an End Date and Time. Depending on how large your catalog is this could take between 30 and 90 minutes. And like mentioned before, if you select multiple destinations, they should run in parallel and not increase the total processing time.


Important Considerations:

  • The Catalog Refresh Process executes 2 main steps (It's open source, so you can add or remove to/from the list below if needed):

    • Cleanup Destination Catalog:

      • Delete all promotions

      • Delete all Product Facets

      • Delete all Specs

      • Delete all Price Schedules

      • Delete all Categories

      • Delete all Products with Inventory Records (Non Parents)

      • Delete all Parent Products with Inventory Records

    • Clone Source to Destination Catalog:

      • Clone Parent Products with Inventory Records

      • Clone Products with Inventory Records

      • Clone Categories

      • Clone Category Assignments

      • Clone Category Product Assignments

      • Clone Price Schedules

      • Clone Specs

      • Clone Product Facets

      • Clone Promotions

      • Clone Catalog Product Assignments

      • Clone Product Assignments

  • This Tool was built using Sitecore 10.3 and OrderCloud .Net SDK.

  • Although the UI was built on Sitecore, with little customization, it can easily be used outside of Sitecore.


Thank you for reading! If you found this helpful, please share it with your network.


 
 
 

© 2021 ALYAS Solutions

bottom of page