Share via


Set up Microsoft Dynamics 365 Customer Insights integration in Clienteling

You can integrate Dynamics 365 Customer Insights with Store Operations Assist Clienteling to access and unify data across systems without the need for any other development. This seamless integration empowers store associates with valuable customer insights, enhancing their ability to serve customers effectively.

Unification typically refers to the process of combining or integrating data from various sources and touch points to create a comprehensive and unified view of the customer. Unifying customer insights enables organizations to create a 360-degree view of each customer, allowing them to tailor their marketing messages, product offerings, and customer experiences to better meet individual needs and preferences. It can also help identify patterns, trends, and correlations that might not be apparent when analyzing data in isolation.

To integrate Dynamics 365 Customer Insights with Store Operations Assist, perform the following steps:

Important

Refer to Dynamics 365 Customer Insights documentation for completing all steps listed. You will need Administrator permissions in Dynamics 365 Customer Insights to complete all steps.

  1. Create a Dynamics 365 Customer Insights environment.

  2. Add a data source and import customer data by connecting to your data source.

  3. Unify the data and set up relationships.

  4. Enhance customer baseball profile by setting up measures and activities for Store Operations Assist in Dynamics 365 Customer Insights environment.

Create a Dynamics 365 Customer Insights environment

You can create a Dynamics 365 Customer Insights environment from Customer Insights - Data. You need to provide the Dataverse environment where Store Operations Assist is deployed to connect to the Dynamics 365 Customer Insights instance.

Screenshot shows creating a Customer Insights environment.

This step automatically populates the Dynamics 365 Customer Insights virtual tables into Dataverse environment. As a result of this, elastic tables with a prefix msdynci get created. The entire list of elastic tables can be found by searching msdynci in the maker portal as shown:

Screenshot showing msdynci elastic tables.

Add a data source and import customer data

To add a new data source in Dynamics 365 Customer Insights, perform the following steps:

  1. Open Customer Insights - Data.

  2. Select Data tab and then select Data sources. Select + Add a data source to add a new data source.

    Screenshot showing adding a data source.

When you import data from external source in Dynamics 365 Customer Insights, it creates a unique identifier for a customer.

For example, the new identifier generated by Dynamics 365 Customer Insights is as shown:

Screenshot showing new customer identifier.

The virtual table msdynci_alternatekey contains the mapping between the identifier generated by Dynamics 365 Customer Insights and the original customer identifier.

Screenshot shows mapping with original customer identifier.

Unify the data and set up relationships

You need to perform the following steps for unifying data and setting up relationships:

  1. Open Customer Insights - Data.

  2. Select Data tab, and then select Unify. After you complete all the unification steps, review and create customer profiles.

    Screenshot shows workflow for unifying the data.

Select data source

  1. Select tables and attributes from data source containing following details:

    • Customer Identifier (a GUID)
    • Address
    • Birthdate
    • Email
    • Phone
    • Language of preference

    Screenshot showing source fields selected.

  2. You have to fetch the loyalty information like membership ID, membership start date and tier name from the data source. Select attributes related to Loyalty Account details:

    • Loyalty Account ID
    • Loyalty Membership ID
    • Membership start date
    • Tier name

    Screenshot showing loyalty account selected.

    Important

    Ensure the attribute names match while following these steps.

Define matching rules

Define rules to match customer records between two or more tables. This stage establishes connections between tables to associate all data with the customer and defining relationships that enable the retrieval of the aforementioned attributes.

Set the order of each table based on priority, and select + Add rule to get started. Select include all records to implement outer join.

Screenshot showing adding matching rules.

Unify customer fields

All the customer fields are listed here. You need to change the Output field name of the selected attributes.

Important

You can change the Output field name only in this step and the output field names cannot be changed later.

Customer Attribute  Output field name 
Email  emailaddress1 
Date of Birth  birthdate 
Language of Preference  msret_languageofpreference 
Phone  msret_mainphone 
Address Line 
State 
Country 
address1_line1 

address1_stateorprovince 
address1_country 

 
Loyalty membership start date  msret_membershipstartdate 
Loyalty Tier  msret_tiername 
Loyalty Account Membership ID  msret_loyaltyaccountname 

Define activities

Activities are used to display Purchase History in Clienteling. You create a new activity, SalesOrderLine as given in Customer or business contact activities.

  1. Open Customer Insights - Data.

  2. Select Data tab, and then select Activities.

  3. Select the SalesOrderLine activity and select Next.

    Screenshot shows setting up activities.

  4. Map to the table in data source, which has item level purchase details of customer.

    Screenshot shows setting up activities details.

    1. Enter PurchaseHistoryLineItemLevel as activity name.

    2. Enter order date or createdOn attribute in source table as timestamp.

    3. Enter Event activity as product name.

    4. Enter Amount paid for more detail.

  5. Complete the steps by providing details for other mandatory fields and defining required relationships.

Define measures

Measures are used to display multiple features such as total order value, average spends, and so on, in the customer baseball card.

  1. Open Customer Insights - Data.

  2. Select Insights tab, and then select Measures.

  3. Build Customer attribute measures as given in Create measures with measure builder with name specified as in the given table:

    Measure Purpose Display name
    Display total order value TotalOrderValue
    Display average order value AverageOrderValue
    Display gift balance GiftBalance
    Display rewards RewardsBalance
    Display loyalty balance LoyaltyBalance
  4. Select Run the measures and make sure that type of measure is Customer attribute.

    Screenshot shows setting up measures.

The defined measures are displayed in the Measures tab.

Screenshot shows the defined measures.

Change the source of data from Dataverse to Dynamics 365 Customer Insights tables

By default, the customer baseball card retrieves data from Dataverse. You need to modify the data source settings and specify Dynamics 365 Customer Insights tables as the new source of data for the customer baseball card feature.

Important

You will need administrator permissions in Power Apps or Store Operations Assist Admin to complete all steps.

  1. Sign in to Power Apps and select Tables tab. Select All tab and search for Dataverse tables with prefix msdynci. You would see 8-10 CI virtual tables listed in the search result.

    The image shows all Dataverse tables.

  2. Go to Solutions tab. Select New solution to create a new unmanaged solution. Enter all relevant details and select Create.

    The image shows how to create a new unmanaged solution.

  3. Go to the newly created solution and select Add existing > Table. A pop-up would open with the list of tables.

    The image shows how to add tables to the solution.

  4. Select Contact table and add it to the solution.

  5. In the solution, select Contact table and then select Forms, which is available in the Data experiences tab.

    The image shows how to add contact forms to the solution.

  6. Add the existing Contact UCP form to the solution.

  7. Select and open Contact UCP form and add CI as source for all controls. You can edit the form and change the source to CI for each control/tile.

  8. Select purchasesummarycontrol card and then expand Components section.

  9. Select PurchaseSummaryControl. Fill the details as follows:

    • DATA_SOURCE_TYPE: Enter msdynci.
    • DATA_SOURCE_NAME: Enter the same source name as used in CI setup (in lower case)
    • CUSTOMER_ID_TABLE_NAME: Enter the same table name as used in CI setup (in lower case).
  10. Select Done and then Save & Publish. The purchase summary data in customer baseball card starts obtaining data from CI tables instead of Dataverse.

  11. Repeat the same steps to enable all the cards such as Rewards, Gifts, Profile (Customer Snapshot, Loyalty), and Activity (Purchase History).

    Note

    CI integration is not currently supported for the Spend by product category and Most purchased brands cards. You can hide these cards for the store associate. Select each tile and then select Hide on phone.

    Important

    For the Profile card, you'll have to enter the details for the Link_entity_field as provided in CI.

  12. After all the cards are enabled to get data from Customer Insights, select Save and publish.

Test the Customer Insights integration setup

In Clienteling, the first step is customer search. Since virtual tables don't support search functionality, you need searchable customer data in Dataverse table to start the search. Customer search in Store Operations Assist is done on the Contacts table so you need to prefill this table with customer searchable data. Ideally, you need minimal information namely, customer name, email and phone number. While name is mandatory, email & phone number are optional fields.

You need to export searchable information from Customer Table in Customer Insights to Contact table in Dataverse. The ‘customerid’ generated by Dynamics 365 Customer Insights is used as primary identifier in the Dynamics 365 Customer Insights ecosystem. Hence, the unique customer identifier in data source of Dynamics 365 Customer Insights should be the primary key of the Contact table of Dataverse. For the entire flow to work, make sure to export the searchable information along with the ‘customerid’ in the 3P Data source to the Contact table of Dataverse.

To export searchable information to Dataverse, go to the Export tab in Dynamics 365 Customer Insights. You must also configure the frequency and schedule of the export.

Screenshot shows how to export searchable information.

For more information,see Dynamics 365 Customer Insights export settings.