Integrating CDPs with Tweakwise External Data

Learn how to use product data from CDP's like Klaviyo, Deployteq, Voyado, and CM.com to drive merchandising.

Integrating CDPs with Tweakwise External Data

Integrating your Customer Data Platform (CDP) with Tweakwise allows you to personalize search results and lister pages based on real-time user behavior. By fetching profile-specific product IDs from your CDP, you can apply dynamic boosting or filtering within the Tweakwise merchandising machine.

This guide answers: How do I fetch personalized product sets from my CDP and use them in Tweakwise?

The implementation follows a four-step pattern:

  1. Identify the CDP Endpoint: Locate the API that returns products for a specific profile ID.
  2. Configure External Data Source: Set up the request in the Tweakwise Hub.
  3. Merchandising Setup: Use the EDC component in Builder or Boost & Bury.
  4. Map and Merchandize: Map the response to your product attributes and apply rules.

Implementation per CDP

Klaviyo

  • Endpoint: https://a.klaviyo.com/api/profiles/{profile_id}/
  • Implementation: Target the events endpoint if you need granular interaction data. Filter for Viewed Product metrics.
  • JSON Path Mapping: $.data.attributes.recently_viewed_items

Deployteq

  • Endpoint: https://{instance}.deployteq.nl/api/rest/profiles/{id}
  • Implementation: Authenticate via API Key. Extract product IDs from specific profile fields or group memberships.

Voyado

  • Endpoint: https://{tenant}.voyado.com/api/v2/recommendations/{profileId}
  • Implementation: Voyado typically returns article numbers. Map these to your Tweakwise article_number attribute.

CM.com

  • Endpoint: https://api.cm.com/cdp/v1/profiles/{id}
  • Implementation: Extract productId from the events array using JSON Path to find the most recent product_viewed instances.

Setting up the External Data Source

  1. Go to Tweakwise Hub > Merchandising > External Data.
  2. Create a new source (e.g., "CDP Personalization").
  3. URL: Input the CDP endpoint. Use {{profileId}} as a dynamic placeholder.
  4. Response Mapping: Define the JSON path (e.g., $.products[*].id) to extract an array of IDs.

Merchandising with External Data (EDC)

Once the source is configured, you must tell the Tweakwise engine how to use this data.

Using in Builder (Visual Merchandising)

In the Builder module, you can use External Data to create dynamic "Personalized for You" rows or tiles:

  1. Open any Template in the Builder.
  2. Add a new External Data component.
  3. Configure the component to match the data source from step 1.
  4. Save the component and place it in the position you want to personalize.
  5. Tweakwise will now fill that position with a product returned by the CDP API for that specific user.

Using in Boost & Bury

To influence the global ranking of products based on CDP data:

  1. Go to Merchandising > Boost & Bury.
  2. Create or edit a rule.
  3. Select the created External Data Source as component or create a new one.
  4. Give it a weight (gentle nudge vs aggressive boost).
  5. Tweakwise will now prioritize products returned by the CDP API for that specific user.

Notes & Important Considerations

Performance: External Data calls are made at runtime. Ensure your CDP API response time is under 100ms to avoid latency.

  • Caching: Set a TTL (Time To Live) in the External Data settings if profile data doesn't change instantly.
  • Identifier Consistency: The ID passed from the frontend (e.g., tweakwise_id) must match the CDP's lookup key.
  • Fallback: Ensure a default sort (like "Newest" or "Popularity") is active if the CDP returns no results.

Check the Official Builder External Data Page for version-specific updates.