Scott Reed
OMVPPaaS CMS Developer Certificationworkspace_premium +2
Jun 29, 2023
visibility 2137
star star star star star star
(7 votes)

New ODP Connector For Customized Commerce

When you have both Customized Commerce and the ODP one core aim is to connect the data to the platform so that it can be used within the ODP for functions such as campaigns, reports and real time segmentation. 

Although the ODP has a powerful API that allows you to interact with it, the standard approach in Optimizely has been to connect it using the ODP App for Commerce Cloud

This connector pulls Products, Customers and Orders in to the ODP using the Service API package which needs installing in to your commerce solution. It then pulls the data at a frequency from Commerce in to the ODP platform at a specifically set regular interval. However this comes with a number of issues

  • Problems with high volume of data in larger solutions
  • Problems with combatibility with different versions of Service API
  • Reliance on Optimizely managing it as an application for features and scheduler
  • Import interval slow for use with real time segments
  • Lack of ease to control syncing of custom attributes for customers/products

Alternate options have been to use custom code or third parter connectors to directly interact with the ODP via the API stack, however in Commere 14.13.1 there now comes an offical connector https://docs.developers.optimizely.com/customized-commerce/docs/integrate-commerce-and-odp

This connector has the following features

  1. Runs as a scheduled job which you can control the timings of
  2. Can push products, customers and orders
  3. Support for Products and Customer custom attributes by the us of an ICustomerCustomFieldsHandler / IProductCustomFieldsHandler (see the link for code example)

This is the first version and will be enhanced I'm sure but now give us a better option for offically connecting Customized Commerce and the ODP!

Jun 29, 2023

Comments

Johnny Mullaney
Johnny Mullaney Jun 29, 2023 03:53 PM

Hey Scott,

Another problem with the ODP connector is that it does not sync custom Product Attribute data with the catalog.

This is a big limitation as this data is the most important for customer segmentation.

To work around this I created an Optimizely Add On that allows you to tag custom property's in code that you want to sync to ODP. 

Optimizely Data Platform (ODP) -> Commerce Cloud: Product Attribute Connector – Johnny Mullaney

Hopefully this will be included as an important feature in the ODP connector over future iterations.

Johnny

Van Pham Hong
Van Pham Hong Jun 30, 2023 04:14 AM

Thank you for sharing this information, Scott.

Scott Reed
Scott Reed Jun 30, 2023 09:13 AM

Thanks Johnny, as mentioned the first version already has the ability to create ICustomerCustomFieldsHandler / IProductCustomFieldsHandler implementations to add custom attributes for customer and product!

Johnny Mullaney
Johnny Mullaney Jun 30, 2023 09:25 AM

Good to know. I dont think it is a new connector though as I previously enabled it for a client over a year ago and i have blogged about it in the past.

The addition of IProductCustomFieldsHandler and ICustomerCustomFieldsHandler for attribute suppoer is very welcome.

Thanks for the post Scott, always helpful!

Scott Reed
Scott Reed Jul 3, 2023 08:34 AM

This connector is definately a new one as it was built as a result of issues with the existing ODP connector and I discussed these issues with Mark Hall, it's been in development for the last few months as I've been discussing it with Optimizely.

I know there's the First3Things connector that works the same but this is an Optimizely owned/developed package

Johnny Mullaney
Johnny Mullaney Jul 3, 2023 02:37 PM

Makes sense, thanks Scott!

error Please login to comment.
Latest blogs
Surviving a Dirty Feed. Part 3: Error Handling and Event Batching

Committing a 250,000-row Optimizely catalog import row by row, returning a per-row failure report, and coalescing catalog events into one per batch.

Stanisław Szołkowski | Oct 16, 2026 |

Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026

Cheapskate AI Translator: Because Translation Should Not Require a Second Mortgage

There is a particular kind of software project that begins with a detailed architecture document, a product roadmap, and a carefully assembled...

Linh Doan Cuu | Oct 15, 2026

Computed Fields in CMS 13 Content Contracts with Optimizely Graph

Content Contracts in Optimizely CMS 13 allow different content types to share a common structure when querying Optimizely Graph. But what if the...

Mardy | Oct 14, 2026