When you install the Data Connection extension, two new configuration pages appear in the System menu under Services in the Commerce Admin.
To connect your Adobe Commerce instance to the Adobe Experience Platform, you must configure both connectors, starting with the Commerce Services connector then finishing with the Data Connection extension.
If you have previously installed an Adobe Commerce service, you probably have already configured the Commerce Services connector. If not, then you must complete the following tasks on the Commerce Services connector page:
After you configure the Commerce Services connector, you then configure the Data Connection extension.
In this section, you connect your Adobe Commerce instance to the Adobe Experience Platform using your organization ID. You can then specify the type of data - storefront and back office - to send to the Experience Platform edge.
In the Admin, go to System > Services > Data Connection.
On the Settings tab under General, verify the ID associated with your Adobe Experience Platform account, as configured in the Commerce Services Connector. The organization ID is global. Only one organization ID can be associated per Adobe Commerce instance.
In the Scope drop-down, set the context to Website.
(Optional) If you already have an AEP Web SDK (alloy) deployed to your site, enable the checkbox and add the name of your AEP Web SDK. Otherwise, leave these fields blank and the Data Connection extension deploys one for you.
If you specify your own AEP Web SDK, the Data Connection extension uses the datastream ID associated with that SDK and not the datastream ID specified on this page (if any).
In this section, you specify the type of data you want to send to the Experience Platform edge. There are two types of data: client-side and server-side.
Client-side data is data captured on the storefront. This includes shopper interactions, such as View Page
, View Product
, Add to Cart
, and requisition list information (for B2B merchants). Server-side data, or back office data, is data captured in the Commerce servers. This includes information about the status of an order, such as if an order was placed, canceled, refunded, shipped, or completed.
To ensure that your Adobe Commerce instance can begin data collection, review the prerequisites.
See the events topic to learn more about storefront and back office events.
All fields in the Data collection section apply to the Website scope or higher.
Select Storefront events if you want to send storefront behavioral data.
Select Back office events if you want to send order status information, such as if an order was placed, canceled, refunded, or shipped.
If you select Back office events, all back office data is sent to the Experience Platform edge. If a shopper chooses to opt out of data collection, you must explicitly set the shopper’s privacy preference in the Experience Platform. This is different from storefront events where the collector already handles consent based on shopper preferences. Learn more about setting a shopper’s privacy preference in the Experience Platform.
(Skip this step if you are using your own AEP Web SDK.) Create a datastream in the Adobe Experience Platform or select an existing datastream you want to use for collection. Enter that datastream ID in the Datastream ID field.
Enter the Dataset ID that you want to contain your Commerce data. To find the dataset ID:
To ensure back office event data updates based on a schedule according to a cron job, you must change the Sales Orders Feed
index to Update by Schedule
.
On the Admin sidebar, go to System > Tools > Index Management.
Select the checkbox for the Sales Orders Feed
indexer.
Set Actions to Update by Schedule
.
If you are enabling back office data for the first time, run the following commands to reindex and trigger a resync. Subsequent resyncs occur automatically as long as the cron job is set up correctly.
bin/magento index:reindex sales_order_data_exporter_v2
bin/magento saas:resync --feed orders
Field | Description |
---|---|
Scope | Specific website where you want the configuration settings to apply. |
Organization ID (global) | ID that belongs to the organization that purchased the Adobe DX product. This ID links your Adobe Commerce instance to Adobe Experience Platform. |
Is the AEP Web SDK already deployed to your site | Select this checkbox if you have deployed your own AEP Web SDK to your site |
AEP Web SDK Name (global) | If you already have an Experience Platform Web SDK deployed to your site, specify the name of that SDK in this field. This allows the Storefront Event Collector and Storefront Event SDK to use your Experience Platform Web SDK rather than the version deployed by the Data Connection extension. If you do not have an Experience Platform Web SDK deployed to your site, leave this field blank, and the Data Connection extension deploys one for you. |
Storefront events | Is checked by default as long as the Organization ID and datastream ID are valid. Storefront events collect anonymized behavioral data from your shoppers as they browse your site. |
Back office events | If checked, event payload contains anonymized order status information, such as if an order was placed, canceled, refunded, or shipped. |
Datastream ID (website) | ID that allows data to flow from Adobe Experience Platform to other Adobe DX products. This ID must be associated to a specific website within your specific Adobe Commerce instance. If you specify your own Experience Platform Web SDK, do not specify a datastream ID in this field. The Data Connection extension uses the datastream ID associated with that SDK and ignores any datastream ID specified in this field (if any). |
Dataset ID (website) | ID of the dataset that contains your Commerce data. This field is required unless you have deselected the Storefront events or Back office events checkboxes. Also, if you are using your own Experience Platform Web SDK and therefore did not specify a datastream ID, you must still add the dataset ID associated with your datastream. Otherwise, you cannot save this form. |
After onboarding, storefront data begins to flow to the Experience Platform edge. Back office data takes about five minutes to appear at the edge. Subsequent updates are visible at the edge based on the cron schedule.
Adobe Commerce collects up to five years of historical order data and status. You can use the Data Connection extension to send that historical data to the Experience Platform to enrich your customer profiles and personalize the customer experiences based on those past orders. The data is stored in a dataset within Experience Platform.
While Commerce already collects the historical order data, there are several steps you must complete to send that data to Experience Platform.
Watch this video to learn more about historical orders then complete the following steps to implement historical order collection.
If you have already installed and enabled the Audience Activation extension, you already completed steps 1 and 2 and can skip to step 3.
Create a project in the Adobe Developer Console that authenticates Commerce so it can make Experience Platform API calls.
To create the project, follow the steps outlined in the Authenticate and access Experience Platform APIs tutorial.
As you go through the tutorial, ensure that your project has the following:
The result of this step creates a configuration file that you use in the next step.
Download the workspace configuration file. Copy and paste the contents of this file into the Service Account/Credential details page of the Commerce Admin.
In the Commerce Admin, navigate to Stores > Settings > Configuration > Services > Data Connection.
Select the server-to-server authorization method that you implemented from the Adobe Developer Authorization Type menu. Adobe recommends using OAuth. JWT has been deprecated. Learn more.
(JWT only) Copy and paste the contents of your private.key
file into the Client Secret field. Use the following command to copy the contents.
cat config/private.key | pbcopy
See Service Account (JWT) Authentication for more information about the private.key
file.
Copy the contents of the <workspace-name>.json
file into the Service Account/Credential details field.
Click Save Config.
After you enter the developer credentials, set up the order sync service. The order sync service uses the Message Queue Framework and RabbitMQ. After you complete these steps, order status data can sync to SaaS, which is required before it is sent to Experience Platform.
Enable RabbitMQ.
RabbitMQ is already set up for Commerce versions 2.4.7 and newer, but you must enable consumers.
Enable message queue consumers by cron job in .magento.env.yaml
using CRON_CONSUMERS_RUNNER
environment variable.
stage:
deploy:
CRON_CONSUMERS_RUNNER:
cron_run: true
See the deploy variables documentation to learn about all the available configuration options.
With the order sync service enabled, you can then specify the historical order date range in the Data Connection page.
Specify the date range for the historical orders that you want to send to Experience Platform.
In the Admin, go to System > Services > Data Connection.
Select the Order History tab.
Under Order History Sync, the Copy Dataset ID from Settings checkbox is already enabled. This ensures you are using the same dataset specified in the Settings tab.
In the From and To fields, specify the date range for the historical order data you want to send. You cannot select a date range that exceeds five years.
Select Start Sync to trigger the sync to begin. Historical order data is batched data as opposed to storefront and back office data that is streaming data. Batched data takes about 45 minutes to arrive in Experience Platform.
Field | Description |
---|---|
Copy Dataset ID from Settings | Copies the dataset ID you entered on the Settings tab. |
Dataset ID (website) | ID of the dataset that contains your Commerce data. This field is required unless you have deselected the Storefront events or Back office events checkboxes. Also, if you are using your own Experience Platform Web SDK and therefore did not specify a datastream ID, you must still add the dataset ID associated with your datastream. Otherwise, you cannot save this form. |
From | Date from which you want to begin collecting order history data. |
To | Date from which you want to end collecting order history data. |
Start Sync | Begins the process of syncing the order history data to the Experience Platform edge. This button is disabled if the Dataset ID field is blank or the dataset ID is invalid. |
To confirm that data is being collected from your Commerce store, use the Adobe Experience Platform debugger to examine your Commerce site. After you confirm that data is being collected, you can verify that your storefront and back office event data appears at the edge by running a query that returns data from the dataset you created.
Select Queries in the left navigation of Experience Platform and click Create Query.
When the Query Editor opens, enter a query that selects data from the dataset.
For example, your query might look like the following:
SELECT * from `your_dataset_name` ORDER by TIMESTAMP DESC
After the query runs, the results are displayed in the Results tab, next to the Console tab. This view shows the tabular output of your query.
In this example, you see event data from the commerce.productListAdds
, commerce.productViews
, web.webpagedetails.pageViews
, and so on. This view allows you to verify that your Commerce data arrived at the edge.
If the results are not what you expect, open your dataset and look for any failed batches imports. Learn more about troubleshooting batch imports.
When Commerce data is sent to the Experience Platform edge, other Adobe Experience Cloud products, such as Adobe Journey Optimizer, can use that data. For example, you can configure Journey Optimizer to listen to certain events, and based on that event data, trigger an email for a first-time user or if there is an abandoned cart. Learn how you can extend your Commerce platform by creating customer journeys in Journey Optimizer.