Skip to content

Track Remove from Cart

Call trackRemoveFromCart() when a customer removes a product from their cart.


Usage

javascript
<script>
  const removeData = {
    cartId: "cart_abc",            // Optional
    items: [
      {
        productId: "PROD-001",
        quantity: 1
      }
    ]
  };

  AffiliateSDK.trackRemoveFromCart(removeData);
</script>
php
<script>
  // Handled via WooCommerce AJAX event
  jQuery(document.body).on('removed_from_cart', function(event, fragments, cart_hash, $button) {
    // Extract product ID from the remove button's data attribute
    const productId = $button.data('product_id');
    
    const removeData = {
      items: [{
        productId: productId.toString(),
        quantity: 1
      }]
    };

    if (window.AffiliateSDK) {
      window.AffiliateSDK.trackRemoveFromCart(removeData);
    }
  });
</script>
liquid
<script>
  // Remove from cart tracking for Shopify
  document.addEventListener('cart:remove', function(event) {
    const item = event.detail.item;
    const removeData = {
      items: [{
        productId: item.product_id.toString(),
        quantity: item.quantity
      }]
    };

    if (window.AffiliateSDK) {
      window.AffiliateSDK.trackRemoveFromCart(removeData);
    }
  });
</script>
jsx
export default function CartItem({ item }) {
  const handleRemove = () => {
    const removeData = {
      items: [
        {
          productId: item.id,
          quantity: item.quantity
        }
      ]
    };

    if (window.AffiliateSDK) {
      window.AffiliateSDK.trackRemoveFromCart(removeData);
    }
    
    // Your actual remove logic here
  };

  return <button onClick={handleRemove}>Remove</button>;
}
vue
<script setup lang="ts">
const { item } = defineProps(['item']);

const onRemove = () => {
  const removeData = {
    items: [
      {
        productId: item.id,
        quantity: item.quantity
      }
    ]
  };

  if (window.AffiliateSDK) {
    window.AffiliateSDK.trackRemoveFromCart(removeData);
  }
};
</script>

<template>
  <button @click="onRemove">Remove</button>
</template>

Released under the MIT License.