1. Funnel events

Cart status event

The cart status event (status:cart) must be sent when the user visits the cart page or modifies the shopping cart. This is helpful in calculating the cart abandonment metrics and is an alternate way to send cart information instead of using the a2c event.

The following table lists the properties of the cart status event:

NameTypeDescriptionValue
typeStringRequired.Type of the event.status
nameStringRequired.Name of the event.cart
value.productsArrayRequired.Products array having one or more product objects that were in the cart.To facilitate processing, the Discover system splits the value.products array into individual events called cart_status_split events. If there is a cart status event with two products, Discover generates
original status
event.Two cart_status_split events, one for each individual SKU in the cart.NoteProducts array and its individual SKUs are used in computing cart-related analytics.
n/a
value.products[].skuStringRequired.SKU of the product that was in the cart. Used to calculate abandoned cart metrics.n/a
value.products[].priceNumberOptional.Unit price of the product that is added to cart.Used to compute the abandonment amount (price * quantity). If price not provided, listing price is used instead.n/a
value.products[].quantityNumberRequired.Number of units of products that were added to cart.Along with price, used to compute abandonment amount.n/a
value.products[].fitmentArrayRequired if site supports fitments.Array of fitment objects. Refer to products and fitments for details.Used to compute fitment analytics.n/a
value.context.pageObjectRequired if site is set up with locale configuration.Adds page-specific information (including locale information) under the page object.n/a
value.locale (deprecated)ObjectOptionalA locale object. This attribute is deprecated. We suggest you use the page object for locale data.n

Sample event specification

The following is an example of a cart status event object. This example is in the new format, which means it contains a context object.

{
  "type": "status",
  "name": "cart",
  "value": {
    "context": {
      "page": {
        "locale_country": "<country code, 2 letters, lowercase, e.g. fr>",
        "locale_language": "<language code 2 letters, lowercase, e.g. en>",
        "locale_currency": "<currency code, 3 letters, lowercase, e.g. eur>"
      }
    },
    "products": [
      {
        "sku": "191258",
        "quantity": 1,
        "price": 11.99,
        "fitment": {
          "ids": [
            "3333"
          ]
        }
      },
      {
        "sku": "2402",
        "quantity": 1,
        "price": 12.99,
        "fitment": {
          "ids": [
            "3333"
          ]
        }
      }
    ]
  }
}
If you have suggestions for improving this article, let us know!