Sitecore OrderCloud Documentation


Portal login

Product Synchronization

Published by Marc Bednar on July 26, 2023


OrderCloud allows you to synchronize your catalog content with any system of your choosing using one of the pre-defined delivery mechanism that best suits your needs.  When products are created, updated or deleted, you will be notified of these changes via any of the following Delivery Configurations:

  • SearchIngestion for out-of-the-box integration with Sitecore Search

  • An Http(s) endpoint

  • An EventHub instance

  • A Kafka instance

Add a Connection to OrderCloud

  1. You must have an OrderCloud production marketplace.

  2. You must create a DeliveryConfiguration that enables one of the delivery mechanisms.

  3. You must enable ProductSync using the API described later in this document.

Sitecore Discover 2 Proxy

You should use the Sitecore Discover 2 Proxy when you are required to have the OrderCloud product visibility and pricing rules applied. In a simple B2C implementation you can use Sitecore Discover 2 API directly.

The proxy takes the ‘userinfo’ bearer token obtained via the “oauth/userinfo” route in OrderCloud. The returned token provides all of the context information to the proxy.

Currently, you need to make a request for the OrderCloud team to setup your Discover 2 APIKeys in the proxy on your behalf. This process will eventually become self-serviced.

The payload to be submitted to the proxy is identical to the one of Discover 2 as well as the returned payload, therefore you can take advantage of all the features available in Discover. The proxy simply appends the visibility rules of the current user to the given filters and applies the proper pricing.

Example API payload:

  "ordercloud": {
    "SellerId": "12345"
  "context": {
    "page": {
      "uri": "/search"
  "widget": {
    "items": [
        "entity": "product",
        "rfk_id": "rfkid_7",
        "search": {
          "content": {},
          "filter": {
            "type": "or",
            "filters": [
                "name": "id",
                "type": "eq",
                "value": "BoulderXMid"
                "name": "allsupplierscansell",
                "type": "eq",
                "value": false

RequiredInventoryLocations supports simple wildcards. If your inventory locations IDs have a format similar to this: <productId>_<addressId>_inv". You can specify "*-<addressId>_inv". This is convenient when fulfilling product list pages.

The following is a list of SearchProxy endpoint by region:



US West

Europe West

US East

Japan East

Australia East

The format of the search URL is: {Endpoint}/api/v1/search/{domain}

New Properties


  "SyncProductChanged": true | false, 
  "SyncProductDeleted": true | false, 
  "DeliveryConfigID": ""

New Endpoints

  • GET /integrations/ProductSync

  • PUT /integrations/ProductSync

  • PATCH /integrations/ProductSync

  • DELETE /integrations/ProductSync

For more in formation, see Product Sync API Reference

Still have questions?
Ask in our Community Channel

Content Powered By
Sitecore Logo

© Copyright 2024, Sitecore OrderCloud®. All rights reserved.

Contact Us
Privacy Policy