To identify and capture a cart abandonment or purchase event in Acoustic Digital Analytics, the Shop Action 5 and Shop Action 9 tags must be configured.
Acoustic Digital Analytics tagging requirements
Acoustic Digital Analytics tags are required to register Acoustic Digital Analytics events. The tag requirements depend on the events you want to subscribe to.
Acoustic Digital Analytics tagging requirements
Event that you want to subscribe to Cart abandonment
Tag requirements in Acoustic Digital Analytics
Shop Action 5
Shop Action 9
Registration Tag Attribute 50
Event that you want to subscribe to Cart purchase
Tag requirements in Acoustic Digital Analytics
Shop Action 9
Registration Tag Attribute 50
Shop Action 5 tag
The Shop Action 5 tag captures data about selected products and what products are present in a shopping cart, if any, when the cart is viewed. When a visitor selects a product or views a shopping cart with carted products, a Shop Action 5 tag is called for the selected product or each displayed carted product. The Shop Action 5 tag also reports information about the products such as Product ID, quantity, and price.
Shop Action 9 tag
The Shop Action 9 tag captures data about what products were purchased by a customer. Like the Shop Action 5 tag, one tag must be sent for each product line item purchased. These tags must be sent on the receipt or other completion page that confirms a successful order.
Registration Tag Attribute 50
Registration Tag Attribute 50 is reserved to syndicate an opt-in status for a registered visitor. It is essential that the Registration Attribute 50 tag is configured in Acoustic Digital Analytics. Without it, Acoustic Campaign cannot accept visitor or event data for either the Cart Abandonment or Cart Purchase events.
Note: Keep in mind that Registration Tag Attribute 50 is under the Registration tag category and is different than the other Shop Action tags described in this document. For more information about the Registration Tag, see 2.5.7 Registration Tag
How they work together
For the Cart Abandonment event, Acoustic Digital Analytics first determines whether a browsing visitor has "opted-in" (Registration Attribute 50) to receive email marketing. If so, then Acoustic Digital Analytics counts the number of products in the cart (Shop Action 5) when a visitor leaves the web page and ends the session without purchasing any products (Shop Action 9). The Cart Abandonment event triggers and is sent to Acoustic Exchange and then consumed by Acoustic Campaign.
For more information about Acoustic Digital Analytics tagging, see Tagging implementation guide
You can also contact Acoustic Digital Analytics support.
Shop Action 5 Tag
The Shop Action 5 tag captures data about selected products and which products are present in a shopping cart, if any, when the cart is viewed.
When a visitor views a shopping cart with carted products, a Shop Action 5 tag should be called for each displayed carted product including information about the products such as Product ID, quantity, and price. In cases where a visitor can select or cart a product without actually being directed to the cart page, a single Shop Action 5 tag should also be called for the product just added. For linear purchase or application processes without a 'cart', the Shop Action 5 tag should be sent when the product is 'selected'. Typically this occurs at the earliest point in time when the selected product ID, unit price, and unit quantity values are known.
Key Reports Populated:
- Dashboards (Commerce Overview)
- Site Metrics
- Products (all)
- Paths
- Demographics
- Profile Segments
- Report Segments
Digital Data Exchange Object Example:
digitalData = {
page:
{
pageInfo:
{
pageID:'CART',
onsiteSearchTerm:'',
onsiteSearchResults:''
},
category:
{
primaryCategory:'CHECKOUT'
},
attributes:
{
exploreAttributes:'',
extraFields:''
}
},
cart:
{
item:new Array()
}
};
digitalData.cart.item[0] = {
productInfo:
{
productID:'productID123',
productName:'productName123'
},
quantity:'1',
price:'9.99',
category:
{
primaryCategory:'',
virtualCategory:''
},
attributes:
{
exploreAttributes:'',
extraFields:''
}
};
digitalData.cart.item[1] = {
productInfo:
{
productID:'productID456',
productName:'productName456'
},
quantity:'1',
price:'9.99',
category:
{
primaryCategory:'',
virtualCategory:''
},
attributes:
{
exploreAttributes:'',
extraFields:''
}
};
Tagging Function
In order to use the Shop Action 5 tag, a call is made to cmCreateShopAction5Tag(…). This call should be made for the product selected or for each product viewed in the cart.
In addition to these function calls, you must also make a single call to the function cmDisplayShops() at the end of the sequence of 1 or more cmCreateShopAction5(…) tags. This function evaluates the Shop Action 5 tag data and performs any needed client side aggregation of identical products. The ShopAction5 data collection image request(s) are sent only when the cmDisplayShops() function is called.
Parameter |
Required |
Description |
Length |
Product ID |
Required |
Product ID |
256 |
Product Name |
Required |
Name of the product in the cart. |
256 |
Quantity |
Required |
Quantity of this product currently selected or viewed in a cart. For Travel this is typically the # of tickets selected for a given trip or event, the # of items selected for a given rental-product, or the # or room-nights selected for booking in the hotel. For Financial Services applications this is typically "1", if only 1 quantity is applicable to a given financial product. |
8 |
Unit price |
Required |
Price of each unit of the product. This value should be a decimal number and should not include a dollar sign ($). For Travel this is typically the price for a given route or event ticket, rental product, hotel room/night price, etc. For Financial Services applications this is usually "0" if no revenue value is associated with the application. |
16.2 |
Category ID |
Optional |
Category ID for the leaf node to which this product belongs. This should match with a category ID sent in the CDF file. |
256 |
Attribute string |
Optional |
Up to 50 "-_-" delimited 'attribute' values accessible in Explore reporting. Shop Action 5 and 9 tags both share the same 50 attributes. See Appendix D for more details. |
256 per value |
Extra fields |
Optional |
Up to 15 "-_-" delimited 'extrafield' values accessible through optional Standard Data Export. It is possible to copy the first 15 values from the first 15 Attribute String values by calling cmSetupOther ({"cmAutoCopy AttributesToExtra Fields" :true}); on the page prior to tag function calls. |
100 per value |
Examples
The following example shows Shop Action 5 tags being sent for a couple of products on the Cart page:
<head>
<script type="text/javascript" src="//libs.coremetrics.com/eluminate.js">
</script>
<script type="text/javascript">
cmSetClientID("99999999",true,"data.coremetrics.com","thesite.com");
</script>
</head>
<body>
...
<script type="text/javascript">
cmCreatePageviewTag("Cart", "CART");
// A separate call to cmCreateShopAction5Tag should be made for each cart entry
cmCreateShopAction5Tag("12345", "Product X", "2","5000.42","CATXYZ");
cmCreateShopAction5Tag("67890", "Product Y", "1", "10.95", "CATABC");
cmDisplayShops();
</script>
</body>
Shop Action 9 Tag
The Shop Action 9 tag captures data about what products were purchased by a customer. Like the Shop Action 5 tag, one tag must be sent for each product line item purchased. These tags can be sent on the receipt or other completion page that confirms a successful order.
Shop Action 9 Tag De-duplication for Digital Analytics
Received Shop Action 9 tags are rejected from reporting if all tag parameters are identical to a previously received Shop Action 9 tag, including Order ID. If any Shop Action 9 tag parameter value changes, the new Shop Action 9 tag is accepted and reported again as new product purchase activity.
This is true even when the new Shop Action 9 tag Order ID parameter value exists within the contracted data retention period for this Acoustic Digital Analytics Client ID (13 or 25 months).
Shop Action 9 Tag De-duplication for Explore and the new Acoustic Digital Analytics user interface
Rejection of duplicate Shop Action 9 tags in Explore and the new Acoustic Digital Analytics user interface is identical to previous versions of Acoustic Digital Analytics, except that they compare new tags to only the last 48 hours of received tag data.
Key Reports Populated
- Dashboards (Commerce Overview)
- Site Metrics
- Products
- Paths
- Demographics (Profile Segments)
- Report Segments
Digital Data Object Example:
digitalData = {
page:
{
pageInfo:
{
pageID:'ORDERCONFIRMATION',
onsiteSearchTerm:'',
onsiteSearchResults:''
},
category:
{
primaryCategory:'CHECKOUT'
},
attributes:
{
exploreAttributes:'',
extraFields:''
}
},
user:
[
{
profile:
[
{
profileInfo:
{
profileID:'REGISTRATION-ID',
profileEmail:'EMAIL@EMAIL.COM',
exploreAttributes:''
},
address:
{
city:'CITY',
state_province:'STATE_PROVINCE',
postalcode:'POSTALCODE',
country:'COUNTRY'
}
}
]
}
],
transaction:
{
transactionID:'123',
total:
{
basePrice:'19.98',
shipping:''
},
profile:
{
profileInfo:
{
profileID:'REGISTRATION-ID'
},
address:
{
city:'CITY',
state_province:'STATE_PROVINCE',
postalcode:'POSTALCODE'
}
},
attributes:
{
exploreAttributes:'',
extraFields:''
},
item:newArray()
}
};
digitalData.transaction.item[0]={
productInfo:
{
productID:'productid123',
productName:'productName123'
},
quantity:'1',
price:'9.99',
category:
{
primaryCategory:''
},
attributes:
{
exploreAttributes:'',
extraFields:''
}
};
digitalData.transaction.item[1]={
productInfo:
{
productID:'productid456',
productName:'productName456'
},
quantity:'1',
price:'9.99',
category:
{
primaryCategory:''
},
attributes:
{
exploreAttributes:'',
extraFields:''
}
};
Tagging Function
In order to use Shop Action 9 tags, a call is made to cmCreateShopAction9Tag(…) for each product purchased. In addition, a single call to cmDisplayShops() must be made after all calls to cmCreateShop9Tags(…) in order to send one or more data collection image requests.
Parameter |
Required |
Description |
Length |
Product ID |
Required |
Product ID |
256 |
Product Name |
Required |
Name of the product |
256 |
Quantity |
Required |
Quantity of this product purchased. For Travel this is typically the number of tickets that are purchased for a given trip or event, the # of items rented for a given rental-product, or the number or room-nights booked for this hotel. For Financial Services applications this is typically "1", if only one quantity is applicable to a given financial product. |
8 |
Unit price |
Required |
Price of each unit of the product. This value must be a decimal number and must not include a dollar sign ($). For Travel this is typically the price for a given route or event ticket, rental product, hotel room/night price, and so on. For Financial Services applications this is usually "0" if no revenue value is associated with the application upon completion. |
16.2 |
Registration ID |
Required |
Registration ID for the customer who purchased the product. This must match the Registration ID field in the accompanying Order Tag. |
256 |
Order ID |
Required |
Order ID for the order to which this line belongs. This must match the Order ID in the accompanying Order Tag. |
64 |
Order subtotal |
Required |
Subtotal for the order to which line item belongs. This must not include Shipping and Handling or Tax and must match the Order Subtotal in the accompanying Order Tag. This value must be a decimal number and must not include a dollar sign ($). The Order Subtotal must match the sum of Quantity * Unit Price for all ShopAction9 tags (products) purchased in this order. |
16.2 |
Category ID |
Optional |
Category ID for the leaf node to which this product belongs. This must match with a category ID sent in the CDF file. |
256 |
Attribute string |
Optional |
Up to 50 "-_-" delimited 'attribute' values accessible in Explore reporting. Shop Action 5 and 9 tags both share 50 attributes. See Additional Tag Attributes for for more details. |
256 per value |
Extra Fields |
Optional |
Up to 15 "-_-" delimited 'extrafield' values accessible through optional Standard Data Export. It is possible to copy the first 15 values from the first 15 Attribute String values by calling cmSetupOther ({"cmAutoCopy AttributesToExtra Fields":true}); on the page prior to tag function calls. |
100 per value |
Example:
Up to 15 "-_-" delimited 'extrafield' values accessible through optional Standard Data Export. It is possible to copy the first 15 values from the first 15 Attribute String values by calling cmSetupOther ({"cmAutoCopyAttributesToExtraFields":true}); on the page prior to tag function calls.
<head>
<script type="text/javascript" src="//libs.coremetrics.com/eluminate.js"></script>
<script type="text/javascript">
cmSetClientID("99999999",true,"data.coremetrics.com","thesite.com");
</script>
</head>
<body>
...
<script type="text/javascript">
cmCreatePageviewTag("Order Thank You", "CART");
// A separate call to cmCreateShopAction9Tag should be made for each cart entry
cmCreateShopAction9Tag("12345", "Product X", "2","5000.42", "cust123", "order123",
"10011.79", "CATXYZ");
cmCreateShopAction9Tag("67890", "Product Y", "1", "10.95", "cust123", "order123",
"10011.79", "CATABC");
cmDisplayShops();
cmCreateOrderTag("order123", "10011.79", "5.95",
"cust123", "Austin", "TX", "78727");
cmCreateRegistrationTag("cust123", "registrant@mail.com", "Austin", "TX",
"78727", "US");
</script>
</body>
Registration tag attribute 50
Acoustic Campaign the Registration Attribute 50 Tag is reserved to syndicate an opt-in status for a registered visitor.
By using information recorded in the Acoustic Digital Analytics Registration tag attributes, you can determine your visitors' opt-in or opt-out status for email communications. As a best practice, alias attribute 50 as contactConsent to reduce the odds of it being re-purposed. See Defining an alias and data type for an attribute for more information.
Note: The -_- delimiter cannot set apart individual opt-in or opt-out instructions. To send more than one opt-in or opt-out instruction, you must use multiple registration tags.
Table 1. Tagging Values for Attribute 50 |
|
Attribute value |
Value options (case insensitive) |
Channel values |
email, mobile, sms |
Instruction values |
opt-in, opt-out, [null] |
Example registration attribute usage
Attribute Slot: 50
Attribute Alias: contactConsent
Attribute Value: email, opt-in
Configure shop action tag attributes
By configuring Shop Action tag attributes, you can capture additional metadata that pertains to the item that is being purchased or abandoned.
Configuring shop action tag attributes can be useful for when you want to syndicate additional event attributes that are not included in the default tag attribute configuration, from Acoustic Digital Analytics to Acoustic Campaign.
In this integration, you can add the following attributes to both the Shop Action 5 and Shop Action 9 tags to augment the event data payload sent to Acoustic Exchange and Acoustic Campaign. By adding any of the listed Shop Action tag attributes, Exchange receives the corresponding event attribute when it receives an event from Digital Analytics.
Shop Action Tag Attributes Exchange Event Attribute
ShopAction Tag Attribute 50 productURL
ShopAction Tag Attribute 49 imageURL
ShopAction Tag Attribute 48 size
ShopAction Tag Attribute 47 color
ShopAction Tag Attribute 46 description
Acoustic Digital Analytics cart activity event attributes
The following attributes are available when you subscribe to the Acoustic Digital Analytics cart abandonment and cart purchase events. As such, these attributes are the customer data that is logged and sent to Acoustic Exchange and Acoustic Campaign when a customer triggers an abandoned cart or a cart purchase event in Acoustic Digital Analytics.
Cart abandonment
Event code: ibmcartAbandonmentItem
Event attributes
Attribute Name |
Data Type |
Example |
Description |
Required |
subChannel |
string |
WEB |
A more granular descriptor of the channel where an event occurred. |
Yes |
deviceType |
string |
MOBILEPHONE |
Type of device used during a customer event. |
Yes |
vendor |
string |
HTC |
Vendor of the device used during the event. |
Yes |
model |
string |
NEXUS ONE |
Model of the device. |
Yes |
OS |
string |
ANDROID |
Operating system of the device used during the event. |
Yes |
versionOS |
string |
7.0 |
Operating system version of the device used during an event. |
Yes |
browserName |
string |
Chrome |
Browser used on the device used during the interaction. |
Yes |
browserVersion |
string |
4.0 |
Browser version used on the device used during the interaction. |
Yes |
eventName |
string |
Cart Abandonment |
Name of the event as it appears in the Exchange user interface. |
Yes |
interactionId |
string |
12345678910111213141516 |
Unique identifier for an interaction, externally assigned. Sometimes called a session ID. |
Yes |
daAssignedSessionId |
string |
1234567891011121314 |
Unique identifier for an interaction, internally assigned. Can be used to match Digital Analytics exports and datastore content. |
Yes |
siteId |
string |
<site specific> |
The site ID indicates what site the event is originating from. |
Yes |
productID |
string |
<product specific> |
The product ID of the abandoned item. |
Yes |
productName |
string |
Leather High-Back Office Chair |
The product name of the abandoned item. |
Yes |
category |
string |
Office furniture |
Allows grouping of products into categories. For example, Base Desk, Computer Desk and Office Desk could roll up under Office furniture. |
Yes |
quantity |
number |
1 |
Can be more than 1 if more than one of the same product is abandoned. |
Yes |
basePrice |
number |
175.00 |
The price of the abandoned item. |
Yes |
cartTotal |
number |
175.00 |
Total amount (based on basePrice of each item abandoned) of the cart. |
Yes |
productURL |
URL |
<text> |
URL for additional product information. |
No |
imageURL |
URL |
<product specific> |
URL for the product image. |
No |
size |
string |
<text> |
The size of the product. |
No |
color |
string |
Blue |
Product color |
No |
description |
string |
<text> |
Description of the event to provide context for the event. |
No |
Cart Purchase
Event cod: ibmcartPurchaseItem
Event attributes
Attribute Name |
Data Type |
Example |
Description |
|
subChannel |
string |
WEB |
A more granular descriptor of the channel where an event occurred. |
Yes |
deviceType |
string |
MOBILEPHONE |
Type of device used during a customer event. |
Yes |
vendor |
string |
HTC |
Vendor of the device used during the event. |
Yes |
model |
string |
NEXUS ONE |
Model of the device. |
Yes |
OS |
string |
ANDROID |
Operating system of the device used during the event. |
Yes |
versionOS |
string |
7.0 |
Operating system version of the device used during an event. |
Yes |
browserName |
string |
Chrome |
Browser used on the device used during the interaction. |
Yes |
browserVersion |
string |
4.0 |
Browser version used on the device used during the interaction. |
Yes |
eventName |
string |
Cart Abandonment |
Name of the event as it appears in the Exchange user interface. |
Yes |
orderID |
string |
5678 |
Identifies a specific purchase. |
Yes |
interactionId |
string |
12345678910111213141516 |
Unique identifier for a visit. Sometimes called a session ID. For example, if a cookieId identifies a visitor, the interactionId identifies a visit by that person. One person can generate multiple visits, which are distinguished by multiple interactionIds |
Yes |
daAssignedSessionId |
string |
1234567891011121314 |
Unique identifier for an interaction, internally assigned. Can be used to match Digital Analytics exports and datastore content. |
Yes |
quantity |
integer |
5 |
Total number of individual items in the cart. |
Yes |
productList |
string |
Comma delimited list of product IDs |
The product IDs of the items purchased separated by a comma. |
Yes |
orderShipping |
integer |
25.00 |
If populated, it will show the cost of shipping added to the order total. |
Yes |
orderPromo |
string |
AS678 |
Promotional code/offer used at checkout. |
Yes |
orderTax |
integer |
31.28 |
Tax amount on the total cart order. |
Yes |
orderTotal |
integer |
625.50 |
Total order amount. The amount should not include shipping, but might include sales or discounts. |
Yes |
currency |
string |
USD |
Type of currency. |
Yes |
shippingType |
string |
Priority |
Shipping method selected by customer. |
Yes |
productURL |
URL |
<text> |
URL for additional product information. |
No |
imageURL |
URL |
<poduct specific> |
URL for the product image. |
No |
size |
string |
<text> |
The size of the product. |
No |
color |
string |
Blue |
Product color |
No |
description |
string |
<text> |
Description of the event to provide context for the event. |
No |
Latency in Acoustic Digital Analytics
The latency of customer data flowing from Acoustic Digital Analytics to Acoustic Exchange, and by extension Acoustic Campaign, is directly related to the length of time it takes to trigger a session timeout.
During the Acoustic Digital Analytics provisioning process, you can configure the length of time for user inactivity on a page before a session timeout is triggered. When the session timeout is triggered, Acoustic Digital Analytics sends the cart activity data to Acoustic Exchange. It is important to note that a session timeout is set to 30 minutes by default.