# product_added_to_cart

The `product_added_to_cart` event logs an instance where a customer adds a product to their cart. This event is available on the online store page.
### Accessing Standard Events

```javascript
import {register} from '@shopify/web-pixels-extension';

register(({analytics}) => {
  analytics.subscribe('product_added_to_cart', (event) => {
    // Example for accessing event data
    const cartLine = event.data.cartLine;

    const cartLineCost = cartLine.cost.totalAmount.amount;

    const cartLineCostCurrency = cartLine.cost.totalAmount.currencyCode;

    const merchandiseVariantTitle = cartLine.merchandise.title;

    const payload = {
      event_name: event.name,
      event_data: {
        cartLineCost: cartLineCost,
        cartLineCostCurrency: cartLineCostCurrency,
        merchandiseVariantTitle: merchandiseVariantTitle,
      },
    };

    // Example for sending event to third party servers
    fetch('https://example.com/pixel', {
      method: 'POST',
      body: JSON.stringify(payload),
      keepalive: true,
    });
  });
});

```

```javascript
analytics.subscribe('product_added_to_cart', (event) => {
  // Example for accessing event data
  const cartLine = event.data.cartLine;

  const cartLineCost = cartLine.cost.totalAmount.amount;

  const cartLineCostCurrency = cartLine.cost.totalAmount.currencyCode;

  const merchandiseVariantTitle = cartLine.merchandise.title;

  const payload = {
    event_name: event.name,
    event_data: {
      cartLineCost: cartLineCost,
      cartLineCostCurrency: cartLineCostCurrency,
      merchandiseVariantTitle: merchandiseVariantTitle,
    },
  };

  // Example for sending event to third party servers
  fetch('https://example.com/pixel', {
    method: 'POST',
    body: JSON.stringify(payload),
    keepalive: true,
  });
});

```



## Properties


### PixelEventsProductAddedToCart
The `product_added_to_cart` event logs an instance where a customer adds a product to their cart. This event is available on the online store page

### clientId

value: `string`

The client-side ID of the customer, provided by Shopify

### context

value: `Context`



### data

value: `PixelEventsProductAddedToCartData`



### id

value: `string`

The ID of the customer event

### name

value: `string`

The name of the customer event

### seq

value: `number`

The sequence index number of the event.

### timestamp

value: `string`

The timestamp of when the customer event occurred, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format

### type

value: `EventType.Standard`



### Context
A snapshot of various read-only properties of the browser at the time of event

### document

value: `WebPixelsDocument`

Snapshot of a subset of properties of the `document` object in the top frame of the browser

### navigator

value: `WebPixelsNavigator`

Snapshot of a subset of properties of the `navigator` object in the top frame of the browser

### window

value: `WebPixelsWindow`

Snapshot of a subset of properties of the `window` object in the top frame of the browser

### WebPixelsDocument
A snapshot of a subset of properties of the `document` object in the top frame of the browser

### characterSet

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Document), returns the character set being used by the document

### location

value: `Location`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Document), returns the URI of the current document

### referrer

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Document), returns the URI of the page that linked to this page

### title

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Document), returns the title of the current document

### Location
A snapshot of a subset of properties of the `location` object in the top frame of the browser

### hash

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing a `'#'` followed by the fragment identifier of the URL

### host

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing the host, that is the hostname, a `':'`, and the port of the URL

### hostname

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing the domain of the URL

### href

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing the entire URL

### origin

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing the canonical form of the origin of the specific location

### pathname

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing an initial `'/'` followed by the path of the URL, not including the query string or fragment

### port

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing the port number of the URL

### protocol

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing the protocol scheme of the URL, including the final `':'`

### search

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Location), a string containing a `'?'` followed by the parameters or "querystring" of the URL

### WebPixelsNavigator
A snapshot of a subset of properties of the `navigator` object in the top frame of the browser

### cookieEnabled

value: `boolean`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Navigator), returns `false` if setting a cookie will be ignored and true otherwise

### language

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Navigator), returns a string representing the preferred language of the user, usually the language of the browser UI. The `null` value is returned when this is unknown

### languages

value: `ReadonlyArray<string>`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Navigator), returns an array of strings representing the languages known to the user, by order of preference

### userAgent

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Navigator), returns the user agent string for the current browser

### WebPixelsWindow
A snapshot of a subset of properties of the `window` object in the top frame of the browser

### innerHeight

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), gets the height of the content area of the browser window including, if rendered, the horizontal scrollbar

### innerWidth

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), gets the width of the content area of the browser window including, if rendered, the vertical scrollbar

### location

value: `Location`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), the location, or current URL, of the window object

### origin

value: `string`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), the global object's origin, serialized as a string

### outerHeight

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), gets the height of the outside of the browser window

### outerWidth

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), gets the width of the outside of the browser window

### pageXOffset

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), an alias for window.scrollX

### pageYOffset

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), an alias for window.scrollY

### screen

value: `Screen`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Screen), the interface representing a screen, usually the one on which the current window is being rendered

### screenX

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), the horizontal distance from the left border of the user's browser viewport to the left side of the screen

### screenY

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), the vertical distance from the top border of the user's browser viewport to the top side of the screen

### scrollX

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), the number of pixels that the document has already been scrolled horizontally

### scrollY

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Window), the number of pixels that the document has already been scrolled vertically

### Screen
The interface representing a screen, usually the one on which the current window is being rendered

### height

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Screen/height), the height of the screen

### width

value: `number`

Per [MDN](https://developer.mozilla.org/en-US/docs/Web/API/Screen/width), the width of the screen

### PixelEventsProductAddedToCartData


### cartLine

value: `CartLine | null`



### CartLine
Information about the merchandise in the cart.

### cost

value: `CartLineCost`

The cost of the merchandise that the customer will pay for at checkout. The costs are subject to change and changes will be reflected at checkout.

### merchandise

value: `ProductVariant`

The merchandise that the buyer intends to purchase.

### quantity

value: `number`

The quantity of the merchandise that the customer intends to purchase.

### CartLineCost
The cost of the merchandise line that the customer will pay at checkout.

### totalAmount

value: `MoneyV2`

The total cost of the merchandise line.

### MoneyV2
A monetary value with currency.

### amount

value: `number`

The decimal money amount.

### currencyCode

value: `string`

The three-letter code that represents the currency, for example, USD. Supported codes include standard ISO 4217 codes, legacy codes, and non- standard codes.

### ProductVariant
A product variant represents a different version of a product, such as differing sizes or differing colors.

### id

value: `string | null`

A globally unique identifier.

### image

value: `Image | null`

Image associated with the product variant. This field falls back to the product image if no image is available.

### price

value: `MoneyV2`

The product variant’s price.

### product

value: `Product`

The product object that the product variant belongs to.

### sku

value: `string | null`

The SKU (stock keeping unit) associated with the variant.

### title

value: `string | null`

The product variant’s title.

### untranslatedTitle

value: `string | null`

The product variant’s untranslated title.

### Image
An image resource.

### src

value: `string | null`

The location of the image as a URL.

### Product
A product is an individual item for sale in a Shopify store.

### id

value: `string | null`

The ID of the product.

### title

value: `string`

The product’s title.

### type

value: `string | null`

The [product type](https://help.shopify.com/en/manual/products/details/product-type) specified by the merchant.

### untranslatedTitle

value: `string | null`

The product’s untranslated title.

### url

value: `string | null`

The relative URL of the product.

### vendor

value: `string`

The product’s vendor name.

### EventType


### AdvancedDom

value: `advanced-dom`



### Custom

value: `custom`



### Dom

value: `dom`



### Meta

value: `meta`



### Standard

value: `standard`