E-commerce Purchase
Track completed purchases with order details
// On checkout success page
window.sigvault.track('purchase', {
value: 149.99,
customer_email: 'customer@example.com',
customer_name: 'John Doe',
order_id: 'ORD-12345',
currency: 'USD',
custom_data: {
items: [
{ name: 'Product A', quantity: 2, price: 49.99 },
{ name: 'Product B', quantity: 1, price: 50.01 }
],
shipping_method: 'standard',
payment_method: 'credit_card'
}
});
Lead Form Submission
Track form submissions and lead captures
// On form submit
document.getElementById('contactForm').addEventListener('submit', function(e) {
e.preventDefault();
const formData = new FormData(this);
const email = formData.get('email');
const name = formData.get('name');
// Track the lead
window.sigvault.track('lead', {
customer_email: email,
customer_name: name,
custom_data: {
source: 'contact_form',
form_id: 'homepage_contact'
}
});
// Submit form normally
this.submit();
});
User Signup
Track account registrations and signups
// After successful signup
async function handleSignup(userData) {
try {
// Create account via your API
const response = await fetch('/api/signup', {
method: 'POST',
body: JSON.stringify(userData)
});
if (response.ok) {
// Track the signup
window.sigvault.track('signup', {
customer_email: userData.email,
customer_name: userData.name,
custom_data: {
plan_type: userData.plan,
signup_method: 'email'
}
});
}
} catch (error) {
}
}
Add to Cart
Track when products are added to shopping cart
// On add to cart button click
function addToCart(product) {
// Add to cart logic
cart.add(product);
// Track the event
window.sigvault.track('add_to_cart', {
value: product.price,
custom_data: {
product_id: product.id,
product_name: product.name,
product_category: product.category,
quantity: 1
}
});
}
Custom Events
Track any custom event with your own data
// Track a custom event
window.sigvault.track('video_watched', {
value: 0,
custom_data: {
video_id: 'video-123',
video_title: 'Product Demo',
watch_duration: 120, // seconds
completion_percentage: 75
}
});
// Track newsletter subscription
window.sigvault.track('newsletter_subscribe', {
customer_email: 'subscriber@example.com',
custom_data: {
source: 'footer_form',
list_name: 'monthly_updates'
}
});
React Integration
Example React component for tracking
import { useEffect } from 'react';
function CheckoutSuccess({ order }) {
useEffect(() => {
// Track purchase when component mounts
if (window.sigvault && order) {
window.sigvault.track('purchase', {
value: order.total,
customer_email: order.email,
order_id: order.id,
custom_data: {
items: order.items,
payment_method: order.paymentMethod
}
});
}
}, [order]);
return (
<div>
<h1>Thank you for your purchase!</h1>
{/* Order details */}
</div>
);
}
Need More Examples?
Have a specific use case? Our support team can help you implement SigVault tracking.
Contact Support