Product recommendations are a great way to personalize messages to your contacts. You could send them the latest models of your product or items based on their purchases and browsing history. This can be done either using Mapp Intelligence as a source or with precalculated recommendations from Engage. 

Stored Attributes Recommendations using Imports

Requirements

  • Mapp Engage where Datastore is used
  • Create a recommendation file in the correct format and upload it

Set up 

  1. Select your recommendations
  2. It is very important that you are sure the data is properly formatted. Please see the formatting guide below to help you. 

     The Related Data format

    The name of the dataset will follow the established pattern: "mappdefaultrecommendedproduct".

    The "restricted" filed in the dataset's meta information should be set to "true".

    Field

    Mandatory

    Type

    Description

    userIdyesstringThe internal Mapp Engage user (or contact) identifier. The same as for the rest of the restricted datasets.
    productSKUyesstringThe product identifier. It should correspond to the one from the Product Catalog and Transactions dataset.

    accuracy

    nonumber

    The prediction accuracy.

    Expressed in the format of Integers from the range of (0; 1000]. The lower value the lower accuracy. For example, if the recommendation model produces the accuracy in the range (0; 1.0] the accuracy 0.5843521 will be stored as an integer value of 584.

    If not provided, the default value of 1000 should be stored (physically it could be an empty value that will be interpreted as the default).

    modelnonumber

    The Identifier of the model. This is an Integer number without special requirements from the storage perspective.

    If not provided, the default value of 0 should be stored (physically it could be an empty value that will be interpreted as the default).

     Import File Format

    To import the recommended product records a CSV file should be created. It should have a standard structure of header with column names and the number of rows, each representing one record. The separator is a comma (",").

    Field

    Mandatory

    Type

    Description

    keyyesstring

    In this field, the contact's email or the Mapp Engage userId should be provided. If the value is a number, the import module assumes this is the userId, otherwise - an email.

    During the import process, emails will be translated to the userId (the same as for the rest of the restricted datasets).

    productSKUyesstringThe product identifier. It should correspond to the one from the Product Catalog and Transactions dataset.

    accuracy

    nonumber

    The prediction accuracy.

    Expressed in the format of Integers from the range of (0; 1000]. The lower value the lower accuracy. For example, if the recommendation model produces the accuracy in the range (0; 1.0] the accuracy 0.5843521 will be stored as an integer value of 584.

    If not provided, the default value of 1000 will be stored.

    modelnonumber

    The Identifier of the model. This is an Integer number without special requirements from the storage perspective.

    If not provided, the default value of 0 will be stored.

  3. In Mapp Engage, go to Administration> E-commerce > Recommended Products. If you want to find products for a particular user, you will need to enter the Engage Contact ID.
  4. Upload the data as a recommendation file similar to how you would to your Product Catalog
  5. They can then be used as personalization blocks in your email send-out or with Segmentation Builder.

Example of a Personalization Block

Your recommendation block will be called ecx:recommendedProducts and will need to include a source (PRECALC), your UserID, Model ID, and a minimum accuracy between 0 and 1,000. 

<%ForEach var="recommendedProduct" items="${ecx:recommendedProducts('PRECALC', user.pk, '3', 500)}"%>
    <%${recommendedProduct.productName}%> - <%${recommendedProduct.productPrice}%>
<%/ForEach%>
CODE

Mapp Intelligence On-Demand Recommendations

Firstly, you must meet a number of preconditions:

  • You will need to activate the Mapp Intelligence Recommendation API and Marketing Automation. Please speak to your Customer Success Manager or Account Manager if this is not already activated.
  • For Mapp Intelligence solutions, your Product Catalog must be uploaded and the same on Mapp Intelligence and Mapp Engage
  • User matching (with the email redirect) is configured and in use

  • Intelligence tracking (with product tracking) is active
  • You want to send out messages individually

Set up and Use

  1. You will need a recommendations API. See how to set that up here
  2. Make sure you have the Placement ID for your recommendations. 
    1. this can be found by going to Marketing > Placements > Reco API finding the correct placement and clicking on the API Info action
  3. In Message Creation or  Segmentation Builder, you will need to use a personalization block. The source will be  MAPPINT, and for your modelID you will need the PlacementID from your Mapp Intelligence Recommendation API.

Example of a Personalization Block:

<%ForEach var="recommendedProduct" items="${ecx:recommendedProducts('MAPPINT', user.pk, 'plcmnt5', 0)}"%>
    <%${recommendedProduct.productName}%> - <%${recommendedProduct.productPrice}%>
<%/ForEach%>
CODE


Manual Import & Search of eCommerce Data
Insert a Personalization
Syntax of Personalization Rules
Related Data
Using the Recommendation API