---
schema_version: "1"
id: 1416e2a84fe651c80c1ec883f3a2609d7f8389e07c90294a2957d341aa75852d
title: eCommerce Package Configuration Guide
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/mktg/264-0-0/mc_ab_ecommerce_package_technical_specifications.md
canonical_url: https://help.salesforce.com/s/articleView?id=mktg.mc_ab_ecommerce_package_technical_specifications.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: ca3ded0528e440ccb665741bdfa7d7e8c5364f26dbf1145f3817bbf6885b7989
description: The eCommerce Dimension Package includes standard dimension packages derived from a standardized data extension–based data model. This functionality provides a turnkey solution that brings ecommerce and purchase data into Marketing Cloud Engagement without the need for a costly custom implementation.
products:
  - Marketing
  - Marketing Cloud Engagement
release: "264"
---
# eCommerce Package Configuration Guide

The eCommerce Dimension Package includes standard dimension packages derived from a standardized data extension–based data model. This functionality provides a turnkey solution that brings ecommerce and purchase data into Marketing Cloud Engagement without the need for a costly custom implementation.

The dimension package set includes two primary components:

- Data extension templates in Email Studio
- Dimension Package Set in Audience Builder

## Configuration

This section outlines the data extensions required for the eCommerce Dimension Package Set. Each subscriber-centric data extension relies on identified subscribers and an Engagement subscriber key value.

## Standard Order Header Data Extension

Use this data extension as a universal purchase event repository. Some eCommerce providers choose to generate this information in a different model than what is defined, such as XML or JSON. We chose to this model for simplicity and consistency.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="vertical-align:top;" id="d13595e68">Related Dimension Packages</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Related Dimension Packages" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e68 ">
              <ul>
                <li>Purchase LTD Product</li>

                <li>CountPurchase LTD Order</li>

                <li>CountPurchase LTD </li>

                <li>RecencyPurchase LTD </li>

                <li>SpendDays Since Last </li>

                <li>PurchaseAverage Days </li>

                <li>Between PurchasesAverage </li>

                <li>Order ValueProducts </li>

                <li>Purchased by Product Name (EVER)</li>

                <li>Products Purchased by Days</li>

                <li>Products Purchased by Product Name Last 30, 60 &amp; 90
                  Days</li>

                <li>Products Purchased by Product SKU Last 30, 60 &amp; 90
                  Days</li>

              </ul>
            </td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e68 ">
              <ul>
                <li>Orders by Promotion Code</li>

                <li>Orders by Promotion Code TLD</li>

                <li>Orders by Delivery Method</li>

                <li>Orders by Discount Amount</li>

                <li>Orders by Channel</li>

                <li>Orders by Status</li>

                <li>Orders by Date</li>

                <li>Orders by Total Order Amount</li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

STD\_ORDER\_HEADER

This data extension contains order header information from an eCommerce system.

    
| Field Name | Description and Comments | Data Type | Primary Key | Required |
| --- | --- | --- | --- | --- |
| SubscriberKey | The subscriber key includes a client-specific value supplied in your data. Because this value often contains an email address or other PII-type data, some web analytics providers choose to use the Subscriber ID bigint value from Marketing Cloud Engagement. For SubscriberID values in the native data load, either perform a join before loading data into Engagement or after loading data via query activity using Data Views. | Text (100) | Y | Y |
| OrderHeaderID | This value contains the primary identifier of a given order. The OrderHeaderID and the subscriberKey values make up the composite key for this data source. You can perform an add or update on this data source to update Engagement when an order ships or the status changes. | Text (100) | Y | Y |
| StoreID | This value includes a foreign key to the STD\_STORE data source. | Text (100) |  | N |
| OrderAmount | This value represents the total order amount, including the sum of all items, tax, shipping, and any additional fees. | Decimal (10) |  | Y |
| OrderLineItemsQty | The total number of line items in a given order | Number |  | Y |
| OrderStatus | The current, user-defined status of an order | Text (100) |  |   |
| OrderChannel | Typically the channel the order originated from | Text (100) |  | N |
| DeliveryMethod | User-defined value identifying the selected shipping method | Text (100) |  | N |
| ShippingDate | The date the order shipped | Date - (MM/DD/YYYY) |  | N |
| OrderDate | The date the customer placed an order | Date - (MM/DD/YYYY) |  | Y |
| DiscountAmount | Amount of discount, if any, applied to the total order | Decimal (10) |  |   |
| PromotionCode | User-defined code representing a promotion applied to an order | Text (100) |  | N |
| ModifiedTimestamp | This value includes the date that the record last updated. This value allows for efficiencies when updating Audience Builder. | Date - (MM/DD/YYYY) |  | Y |

## Standard Order Line Item Data Extension

Use this Data Extension as a line item repository for items associated with an order via the STD\_ORDER\_HEADER data extension.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="vertical-align:top;" id="d13595e462">Related Dimension Packages</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Related Dimension Packages" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e462 ">
              <ul>
                <li>Products Purchased by Product Name (EVER)</li>

                <li>Products Purchased by Date</li>

              </ul>
            </td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e462 ">
              <ul>
                <li>Products Purchased by Product Name Last 30, 60, &amp; 90
                  Days</li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table> <table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="vertical-align:top;" id="d13595e508">Data Extension Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Data Extension Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e508 ">Data Extension Name</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e508 ">STD_ORDER_LINE_ITEM</td>

          </tr>
          <tr class="">
            <td data-label="Data Extension Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e508 ">Description</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e508 "> </td>

          </tr>
        </tbody>
      </table>

## STD\_ORDER\_LINE\_ITEM

This data extension includes eCommerce individual records contained within an order.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:20%">
          <col style="width:20%">
          <col style="width:20%">
          <col style="width:20%">
          <col style="width:20%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e564">Field Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e567">Description &amp; Comments</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e570">Data Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e573">PK</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e576">Req</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">OrderHeaderId</td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">This value includes a foreign key to the
              STD_ORDER_HEADER data extension. This value relates individual line
              items to a given order.</td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">TEXT (100)</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 ">Y</td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">Y</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">ProductID</td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">This value includes a foreign key to the
              STD_PRODUCT_CATALOG_3LEVEL data extension. We use the related data
              contained within the Product Catalog to build product-specific
              purchase dimension packages.</td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">TEXT (100)</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 "> </td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">Y</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">OrderLineItemNumber</td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">This value includes the line item of the Order
              Header for this product. The OrderLineItemNumber and the
              OrderHeaderID make-up the composite key for this table</td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">Number</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 ">Y</td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">Y</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">SubscriberKey</td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">&nbsp;</td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">TEXT (100)</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 "> </td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">Y</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">LineItemAmount</td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">This value includes the total amount for this line
              item. Although required, we don’t use this value in dimension
              packages.</td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">Decimal (10)</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 "> </td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">Y</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">
              <p style="margin-bottom:0;">LineItemDiscountAmount</p>
            </td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">
              <p style="margin-bottom:0;">This value includes the Discount applied, if any, for this line
                item.</p>
            </td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">Decimal (10)</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 "> </td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">N</td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e564 ">ModifiedTimeStamp</td>

            <td data-label="Description &amp; Comments" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e567 ">This value includes the date that the record was
              last updated. This value allows for efficiencies when updating
              Audience Builder.</td>

            <td data-label="Data Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e570 ">Date - (MM/DD/YYYY)</td>

            <td data-label="PK" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e573 "> </td>

            <td data-label="Req" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e576 ">Y</td>

          </tr>
        </tbody>
      </table>

## STD\_STORE Standard Store Data Extension

This data extension stores metadata.

    
| Field Name | Description and Comments | Data Type | Primary Key | Required |
| --- | --- | --- | --- | --- |
| StoreID | The store identifier, used in the STD\_ORDER\_HEADER data source | Text (100) | Y | Y |
| StoreName | The name of the store | Text (200) |  | Y |
| StoreAddressLine1 | The address of the store | Text (200) |  | N |
| StoreCity | The city of the store | Text (100) |  | N |
| StoreState | The state of the store | Text (100) |  | N |
| StoreZipCode | The ZIP or Postal code of the store | Text (20) |  | N |
| StoreRegion | The region of the store | Text (200) |  | N |

## Standard Product Catalog 3-Level Data Extension

Use this data extension as the master product catalog for all items designated as a product in the STD\_ORDER\_LINE\_ITEM data source. The data contained in this Data Extension relates to purchase records to enrich that data with metadata and add value to your implementation.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="vertical-align:top;" id="d13595e917">Related Dimension Packages</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Related Dimension Packages" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e917 ">
              <ul>
                <li>Products Purchased by Product Name (EVER)</li>

                <li>Products Purchased by Date</li>

                <li>Products Purchased by Days</li>

                <li>Products Purchased by Product Name</li>

              </ul>
            </td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e917 ">
              <ul>
                <li>Last 30, 60, &amp; 90 Days</li>

                <li>Products Purchased by Product SKU</li>

                <li>Products Purchased by Product SKU Last 30, 60, &amp; 90
                  Days</li>

                <li>Products Purchased By Product Hierarchy Level 1, 2, &amp;
                  3</li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

STD\_PRODUCT\_CATALOG\_3LEVEL

This data extension contains product catalog data up to three levels deep:

```
(Parent Category (level 1) > Sub Category1  (level 2)> Sub category2  (level 3)> Product)
```

Assume this structure for these levels:

```
Clothing > Mens > Outer Wear > [ITEM] 
```

    
| Field Name | Description and Comments | Data Type | PK | Req |
| --- | --- | --- | --- | --- |
| ProductID | Product ID | Text (100) | Y | Y |
| SKU | Product SKU | Text (100) | Y | Y |
|   | Description of the product – the human-readable name of your product | Text (200) |  | Y |
| ProductLevel1Id | ID of product root level | Text (100) |  | Y |
| ProductLevel1Description | Description of root level | Text (200) |  | Y |
|   | ID of product level 2 | Text (100) |  | N |
| ProductLevel2Description | Description of level 2 | Text (200) |  | N |
| ProductLevel3Id | ID of product level 3 | Text (100) |  | N |
| ProductLevel3Description | Description of level 3 | Text (200) |  | N |
| ProductUnitPrice | Selling price of the product | Decimal |  | N |
| ProductCost | Cost of the product | Decimal |  | N |

## Hierarchical Dimension Packages Example

The related hierarchical dimension packages, including those dimension packages using the term …By Product Hierarchy in their names, rely on these listed ProductLevel IDs. Choose whether you use one, two, or three levels of product hierarchy, and use it with all your products.

For example, if you sell shoes and you have three levels to your men's lines of shoes, your product catalog items for men’s shoes looks like this data.

   
| Level 1 | Level 2 | Level 3 | Product |
| --- | --- | --- | --- |
| Mens | Shoes | Running | \[products…\] |
| Mens | Shoes | Dress | \[products…\] |

If your children’s line of shoes only has two levels, your product catalog items for children’s shoes looks like this data.

   
| Level 1 | Level 2 | Level 3 | Product |
| --- | --- | --- | --- |
| Childrens | Shoes | null | \[products…\] |
| Childrens | Shoes | null | \[products…\] |

Modify your three-level products to fit into two levels or modify your two-level products to fit into three levels:

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e1387">
              <strong>Level 1</strong>
            </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e1393">Level 2</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e1396">Level 3</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13595e1399">Product</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Level 1" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1387 ">Mens</td>

            <td data-label="Level 2" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1393 ">Running Shoes</td>

            <td data-label="Level 3" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1396 ">null</td>

            <td data-label="Product" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1399 ">[products…]</td>

          </tr>
          <tr class="">
            <td class="slds-cell-wrap" colspan="4" style="vertical-align:top;" headers="d13595e1387 d13595e1393 d13595e1396 d13595e1399 ">or</td>

          </tr>
          <tr class="">
            <td data-label="Level 1" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1387 ">Childrens</td>

            <td data-label="Level 2" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1393 ">Boys</td>

            <td data-label="Level 3" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1396 ">Shoes</td>

            <td data-label="Product" class="slds-cell-wrap" style="vertical-align:top;" headers="d13595e1399 ">[products…]</td>

          </tr>
        </tbody>
      </table>