Send Promotion Data from Marketing Cloud to Marketing Cloud Personalization

After you prepare Marketing Cloud Personalization (formerly Interaction Studio) to receive Promotion, Promotion Market Segment, and other related object data, you must send the data to Marketing Cloud Personalization. Prepare a data extension that's compatible with Marketing Cloud Personalization's Promotion ETL, and then send it by using Automation Studio in Journey Builder.

Required Editions

Available in: Lightning Experience in Enterprise, Performance, Developer, and Unlimited Editions.
Available in: Orgs that have the B2C - Loyalty, B2C - Loyalty Plus, B2B - Loyalty, Loyalty Management - Growth, or Loyalty Management - Advanced license, Data Cloud, and Interaction Studio in Marketing Cloud enabled.

To send Promotion, Promotion Market Segment, and other related object data to Interaction Studio, complete these steps:

  1. Create a target data extension in Marketing Cloud Contact Builder:
    1. Provide these values to define the data extension:
      • Creation Method: Create from New
      • Name: PromotionTargetDE
    2. On the Attributes tab, add these fields.
    Name Data Type Required Length
    id Text Yes 50
    attribute:name Text Yes 50
    attribute:description Text — 1000
    inclusionSegments Text — 100
    attribute:url Text Yes 1000
    asset:imageUrl Text Yes 1000
    asset:contentZones Text Yes 50
    attribute:published Text — 100
    attribute:expiration Text — 100
    attribute:fulfillmentAction Text — 50
    attribute:promotable Boolean — —

    Select the id field as the primary key.

  2. Send data to Marketing Cloud Personalization by using Automation Studio of Journey Builder.

    Complete these steps:

    1. Create the starting source schedule.
    2. Create an SQL query:
      1. Provide this SQL query.
        SELECT p.Id as id, p.Name as [attribute:name],
        CONVERT(VARCHAR, DATEADD(ss, 1, p.StartDate) , 126) as [attribute:published], CONVERT(VARCHAR, DATEADD(day, DATEDIFF(day, 0, p.EndDate), '23:59:59') , 126) as [attribute:expiration],
        p.Description as [attribute:description], 
        p.URL__c as [attribute:url], p.ImageURL__c as [asset:imageUrl],
        p.ContentZones__c as [asset:contentZones], p.FulfillmentAction as [attribute:fulfillmentAction],
        p.IsActive as [attribute:promotable],
        STUFF((SELECT '|c360a-' + LEFT(m.MarketSegmentId, 15) 
                  FROM PromotionMarketSegment_Salesforce m 
                  WHERE p.Id = m.PromotionId
                  FOR XML PATH('')), 1, 1, '') [inclusionSegments]
        From Promotion_Salesforce p JOIN PromotionMarketSegment_Salesforce pm
                    ON p.id = pm.PromotionId
        WHERE p.SendToInteractionStudio__c = 'True'
        Note
        Note If you don't add the Checkbox type custom field to filter promotions that must be sent to Marketing Cloud Personalization, remove references to the field in the SQL query.
        Tip
        Tip You can modify the SQL query based on your company's requirements and based on any fields that you've added in the Promotion object.
      2. Select the target data extension that you created in step 1.
      3. In Data Action, select Overwrite.
    3. Convert the Data Extract from a data extension to a CSV file:
    4. Convert the Data Extract from CSV to UTF-8.
    5. Transfer the CSV file to the Marketing Cloud Personalization SFTP.

      In steps c-e, use the file name format of Promotion ETL for the file name.

    6. Save the automation.
    7. Run the automation once.

      The data is immediately sent to the inbound folder of Feed's SFTP Files in Marketing Cloud Personalization. Later, the data automatically moves from the inbound folder to the processed folder.

After the data moves to the processed folder of SFTP Files, your Promotion records are available in the Catalog section of Marketing Cloud Personalization. In the records, you can find these items that are associated with the promotion:

  • Image
  • URL
  • Segments

In Marketing Cloud Personalization, the Promotion records expire on the specified end date.