How to Install the Pingstreams Live Chat Widget on a BigCommerce Website
Learn how to integrate the powerful Pingstreams live chat widget into your BigCommerce store to provide exceptional customer support, increase sales, and improve the overall shopping experience for your customers.
Why Add Pingstreams to Your BigCommerce Store?
Section titled “Why Add Pingstreams to Your BigCommerce Store?”Integrating Pingstreams with your BigCommerce store provides numerous e-commerce specific benefits:
- 24/7 Customer Support - AI-powered assistance for product inquiries and order issues
- Increased Sales Conversions - Real-time help during the purchasing process
- Reduced Cart Abandonment - Proactive engagement to address customer concerns
- Order Management - Automated order tracking and status updates
- Product Recommendations - AI-driven suggestions based on customer preferences
- International Support - Multi-language capabilities for global customers
- Seamless Integration - Works perfectly with BigCommerce’s existing features
Prerequisites
Section titled “Prerequisites”Before starting the installation:
- BigCommerce store admin access with script management permissions
- Active Pingstreams account with valid Project ID
- Basic understanding of BigCommerce administration
- Store backup (recommended for safety)
Step-by-Step Installation Guide
Section titled “Step-by-Step Installation Guide”Step 1: Access Your BigCommerce Admin Panel
Section titled “Step 1: Access Your BigCommerce Admin Panel”Log in to your BigCommerce admin panel using your administrator credentials.
Step 2: Navigate to Storefront Section
Section titled “Step 2: Navigate to Storefront Section”In the BigCommerce admin panel, navigate to the “Storefront” section. This is where you can manage various aspects of your website’s appearance and functionality, including:
- Theme management
- Design customization
- Script and code management
- Widget installations
Step 3: Access Script Manager
Section titled “Step 3: Access Script Manager”Within the “Storefront” section, find and select “Script Manager.”
Script Manager is BigCommerce’s built-in tool that allows you to:
- Add custom scripts to your website
- Manage third-party integrations
- Control where and when scripts load
- Monitor script performance
Step 4: Create a New Script
Section titled “Step 4: Create a New Script”In the Script Manager, click on the “Create a Script” button to begin adding the Pingstreams live chat widget.
Step 5: Configure Script Parameters
Section titled “Step 5: Configure Script Parameters”Fill in the script parameters with the following recommended settings:
Location on page: Footer
Section titled “Location on page: Footer”- Choose “Footer” to place the script at the bottom of your web pages
- This ensures optimal page loading performance
- Prevents interference with above-the-fold content
Select pages where script will be added: Store pages
Section titled “Select pages where script will be added: Store pages”- Select “Store pages” to add the widget to all store-related pages
- This provides comprehensive coverage across your entire store
- Includes product pages, category pages, cart, and checkout
Script category: Functional
Section titled “Script category: Functional”- Choose “Functional” to categorize it appropriately
- Helps with compliance and organization
- Clearly identifies the script’s purpose
Script type: Script
Section titled “Script type: Script”- Select “Script” to indicate that you’re adding a custom JavaScript script
- This is the correct option for the Pingstreams widget code
Step 6: Get Your Pingstreams Widget Code
Section titled “Step 6: Get Your Pingstreams Widget Code”Navigate to your Pingstreams dashboard and locate the “Installation Widget” section. Here, you will find the widget code that you need to embed on your website.
Example Pingstreams Widget Code:
Section titled “Example Pingstreams Widget Code:”<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// BigCommerce-specific settings
ecommerce: true,
platform: "bigcommerce",
// Enhanced e-commerce features
cartTracking: true,
productRecommendations: true,
orderSupport: true
};
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
</script>Important: Replace
"your-project-id-here"with your actual Project ID from your Pingstreams dashboard.
Step 7: Paste the Widget Code
Section titled “Step 7: Paste the Widget Code”- Copy the widget code provided by Pingstreams
- Return to your BigCommerce admin panel
- Paste the widget code into the “Script contents” field
- Ensure the code is properly formatted and complete
Step 8: Save the Script
Section titled “Step 8: Save the Script”After pasting the widget code, click on the “Save” button to save your changes and activate the script.
Step 9: Verify Installation
Section titled “Step 9: Verify Installation”Congratulations! You have successfully installed the Pingstreams live chat widget on your BigCommerce website.
To verify the installation:
- Visit your store in a new browser window
- Check for the widget in the bottom corner of pages
- Test the functionality by clicking on the chat widget
- Verify mobile responsiveness on different devices
Advanced BigCommerce Integration Features
Section titled “Advanced BigCommerce Integration Features”Enhanced E-commerce Configuration
Section titled “Enhanced E-commerce Configuration”Take advantage of BigCommerce-specific features with advanced widget configuration:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// E-commerce platform identification
platform: "bigcommerce",
ecommerce: true,
// Product context (dynamically populated)
productContext: {
{{#if product}}
id: "{{product.id}}",
name: "{{product.title}}",
price: "{{product.price.formatted}}",
currency: "{{settings.currency_token}}",
category: "{{product.category}}",
brand: "{{product.brand.name}}",
availability: "{{product.availability}}",
sku: "{{product.sku}}",
{{/if}}
// Cart information
{{#if cart}}
cartValue: "{{cart.total.formatted}}",
cartItems: {{cart.quantity}},
cartId: "{{cart.id}}",
{{/if}}
},
// Customer information (if logged in)
customerContext: {
{{#if customer}}
id: "{{customer.id}}",
email: "{{customer.email}}",
firstName: "{{customer.first_name}}",
lastName: "{{customer.last_name}}",
customerGroup: "{{customer.customer_group.name}}",
orderHistory: {{customer.orders_count}},
{{/if}}
},
// Store-specific settings
storeContext: {
storeName: "{{settings.store_name}}",
storeUrl: "{{settings.base_url}}",
currency: "{{settings.currency_token}}",
locale: "{{settings.default_locale}}",
},
// Page-specific behavior
pageContext: {
pageType: "{{page_type}}",
pageName: "{{page.title}}",
currentUrl: window.location.href
}
};
// Standard widget loading code
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
</script>Order Tracking Integration
Section titled “Order Tracking Integration”Enable automatic order status inquiries:
<script type="application/javascript">
// Enhanced order support for BigCommerce
window.pingstreamsSettings = {
projectid: "your-project-id-here",
orderTracking: {
enabled: true,
{{#if customer.orders}}
recentOrders: [
{{#each customer.orders}}
{
id: "{{id}}",
status: "{{status_text}}",
total: "{{total.formatted}}",
date: "{{date_created.formatted}}"
}{{#unless @last}},{{/unless}}
{{/each}}
],
{{/if}}
},
// Custom responses for order inquiries
orderSupport: {
trackingResponse: "I can help you track your order! Please provide your order number.",
statusUpdate: "Let me check the current status of your order.",
shippingInfo: "Here's the shipping information for your order:"
}
};
// Widget loading code
</script>Cart Abandonment Prevention
Section titled “Cart Abandonment Prevention”Proactively engage users who show signs of leaving:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// Cart abandonment settings
cartAbandonment: {
enabled: true,
{{#if cart.items}}
cartValue: "{{cart.total.formatted}}",
cartItems: {{cart.quantity}},
triggerDelay: 30000, // 30 seconds of inactivity
exitIntentEnabled: true,
{{/if}}
},
// Abandonment messages
abandonmentMessages: {
cartValue: "I noticed you have items in your cart. Need help with checkout?",
productQuestion: "Have questions about the products in your cart?",
shippingHelp: "Need help with shipping options or costs?"
}
};
// Exit intent detection
let exitIntentShown = false;
document.addEventListener('mouseleave', function(e) {
if (e.clientY <= 0 && !exitIntentShown && window.Pingstreams) {
exitIntentShown = true;
window.Pingstreams.openChat({
message: "Wait! Need help completing your purchase?"
});
}
});
// Widget loading code
</script>BigCommerce Theme Integration
Section titled “BigCommerce Theme Integration”Stencil Theme Integration
Section titled “Stencil Theme Integration”For Stencil-based themes, you can integrate more deeply:
{{!-- In your theme's base.html or footer.html --}}
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// Dynamic theme integration
themeInfo: {
name: "{{theme.name}}",
version: "{{theme.version}}",
variation: "{{theme.variation}}"
},
// Responsive breakpoints matching your theme
responsiveBreakpoints: {
mobile: 768,
tablet: 1024,
desktop: 1200
},
// Theme-specific styling
styling: {
primaryColor: "{{theme.settings.color_primary}}",
accentColor: "{{theme.settings.color_accent}}",
fontFamily: "{{theme.settings.font_family}}"
}
};
// Theme-aware widget loading
</script>Multi-Currency Support
Section titled “Multi-Currency Support”Handle different currencies dynamically:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// Currency settings
currency: {
code: "{{currency_selector.active_currency_code}}",
symbol: "{{currency_selector.active_currency_flag}}",
rate: {{currency_selector.active_currency_rate}},
// Multi-currency support
availableCurrencies: [
{{#each currency_selector.currencies}}
{
code: "{{code}}",
name: "{{name}}",
symbol: "{{flag}}"
}{{#unless @last}},{{/unless}}
{{/each}}
]
},
// Currency-specific responses
currencyResponses: {
"USD": "Prices are shown in US Dollars. Free shipping on orders over $50!",
"EUR": "Prices are shown in Euros. Free shipping on orders over €45!",
"GBP": "Prices are shown in British Pounds. Free shipping on orders over £40!"
}
};
// Widget loading code
</script>Advanced Use Cases
Section titled “Advanced Use Cases”Product Recommendation Engine
Section titled “Product Recommendation Engine”Integrate with BigCommerce’s product data:
<script type="application/javascript">
// Product recommendation integration
window.pingstreamsSettings = {
projectid: "your-project-id-here",
{{#if product}}
// Current product context
currentProduct: {
id: {{product.id}},
name: "{{product.title}}",
category: "{{product.category}}",
price: {{product.price.value}},
// Related products
{{#if product.related_products}}
relatedProducts: [
{{#each product.related_products}}
{
id: {{id}},
name: "{{name}}",
price: "{{price.formatted}}",
url: "{{url}}"
}{{#unless @last}},{{/unless}}
{{/each}}
],
{{/if}}
// Product variants
{{#if product.variants}}
variants: [
{{#each product.variants}}
{
id: {{id}},
sku: "{{sku}}",
price: {{price}},
inventory: {{inventory_level}}
}{{#unless @last}},{{/unless}}
{{/each}}
],
{{/if}}
},
{{/if}}
// Recommendation settings
recommendations: {
enabled: true,
maxSuggestions: 3,
includeCategories: true,
includeBrands: true,
priceRange: true
}
};
// Widget loading code
</script>Inventory Management Support
Section titled “Inventory Management Support”Handle stock inquiries automatically:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
{{#if product}}
inventoryContext: {
productId: {{product.id}},
availability: "{{product.availability}}",
stockLevel: {{product.inventory_level}},
trackInventory: {{product.inventory_tracking}},
// Stock status messages
stockMessages: {
inStock: "This item is currently in stock and ready to ship!",
lowStock: "Hurry! Only a few items left in stock.",
outOfStock: "This item is currently out of stock. Would you like to be notified when it's available?",
backorder: "This item is available on backorder with an estimated shipping date."
},
// Restock notifications
restockNotifications: {
enabled: {{#if product.inventory_tracking}}true{{else}}false{{/if}},
message: "Would you like to be notified when this item is back in stock?"
}
},
{{/if}}
};
// Widget loading code
</script>Customer Service Integration
Section titled “Customer Service Integration”Enhanced support for returning customers:
<script type="application/javascript">
window.pingstreamsSettings = {
projectid: "your-project-id-here",
{{#if customer}}
customerService: {
customerId: "{{customer.id}}",
customerSince: "{{customer.date_created.formatted}}",
totalOrders: {{customer.orders_count}},
lifetimeValue: "{{customer.store_credit.formatted}}",
// Recent order context
{{#if customer.orders}}
recentOrder: {
{{#with customer.orders.[0]}}
id: "{{id}}",
status: "{{status_text}}",
total: "{{total.formatted}}",
date: "{{date_created.formatted}}",
trackingNumber: "{{shipping.tracking_number}}"
{{/with}}
},
{{/if}}
// Personalized service
vipCustomer: {{#if customer.customer_group.name}}true{{else}}false{{/if}},
preferredLanguage: "{{customer.language}}",
timezone: "{{customer.timezone}}"
},
{{else}}
// Guest customer support
guestSupport: {
orderLookup: true,
guestCheckout: true,
accountCreation: true
},
{{/if}}
};
// Widget loading code
</script>Performance Optimization for BigCommerce
Section titled “Performance Optimization for BigCommerce”Lazy Loading Implementation
Section titled “Lazy Loading Implementation”Optimize page loading performance:
<script type="application/javascript">
// Lazy load widget for better performance
function initializePingstreamsWidget() {
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// Your configuration here
};
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
}
// Load after page interaction or delay
let widgetLoaded = false;
function loadWidget() {
if (!widgetLoaded) {
initializePingstreamsWidget();
widgetLoaded = true;
}
}
// Multiple loading triggers
window.addEventListener('scroll', loadWidget, { once: true });
window.addEventListener('mousemove', loadWidget, { once: true });
setTimeout(loadWidget, 3000); // Fallback after 3 seconds
// Immediate load for high-intent pages
if (window.location.pathname.includes('/checkout') ||
window.location.pathname.includes('/cart')) {
loadWidget();
}
</script>CDN and Caching Optimization
Section titled “CDN and Caching Optimization”<script type="application/javascript">
// Cache-friendly widget configuration
window.pingstreamsSettings = {
projectid: "your-project-id-here",
// Performance settings
performance: {
lazyLoad: true,
cacheWidgetData: true,
preloadTimeout: 2000,
// CDN settings
cdnEnabled: true,
cdnRegion: "auto", // or specify region
},
// Reduced initial payload
minimizeInitialLoad: true,
loadOnDemandFeatures: [
"fileUpload",
"videoChat",
"screenShare"
]
};
// Optimized loading with error handling
(function() {
try {
// Widget loading code with timeout protection
var loadTimeout = setTimeout(function() {
console.warn('Pingstreams widget loading timeout');
}, 10000);
(function(d, s, id) {
var w = window;
var d = document;
var i = function() { i.c(arguments); };
i.q = [];
i.c = function(args) { i.q.push(args); };
w.Pingstreams = i;
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "https://widget.pingstreams.com/v6/launch.js";
js.onload = function() { clearTimeout(loadTimeout); };
js.onerror = function() {
clearTimeout(loadTimeout);
console.error('Failed to load Pingstreams widget');
};
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'pingstreams-jssdk'));
} catch (error) {
console.error('Pingstreams initialization error:', error);
}
})();
</script>Testing and Quality Assurance
Section titled “Testing and Quality Assurance”Comprehensive Testing Checklist
Section titled “Comprehensive Testing Checklist”Functionality Testing:
Section titled “Functionality Testing:”- ✅ Widget appears on all intended store pages
- ✅ Chat window opens and closes properly
- ✅ Message sending and receiving works
- ✅ Product context is passed correctly
- ✅ Customer data is available when logged in
- ✅ Order information is accessible
- ✅ Cart data is tracked accurately
Cross-Device Testing:
Section titled “Cross-Device Testing:”- ✅ Desktop browsers (Chrome, Firefox, Safari, Edge)
- ✅ Mobile browsers (iOS Safari, Android Chrome)
- ✅ Tablet displays (iPad, Android tablets)
- ✅ Touch interactions work properly
- ✅ Responsive design adapts correctly
E-commerce Specific Testing:
Section titled “E-commerce Specific Testing:”- ✅ Product page functionality
- ✅ Category page behavior
- ✅ Cart page integration
- ✅ Checkout process compatibility
- ✅ Order confirmation page display
- ✅ Customer account area functionality
Performance Testing:
Section titled “Performance Testing:”- ✅ Page load speeds remain acceptable
- ✅ Time to interactive is not impacted
- ✅ No JavaScript errors in console
- ✅ Widget loading time is reasonable
- ✅ Memory usage is optimized
Troubleshooting Common Issues
Section titled “Troubleshooting Common Issues”Widget Not Loading
Section titled “Widget Not Loading”Possible Causes:
- Script Manager misconfiguration
- JavaScript conflicts with other scripts
- Incorrect Project ID
- Theme compatibility issues
Solutions:
- Verify Script Manager settings are correct
- Check browser console for error messages
- Confirm Project ID in Pingstreams dashboard
- Test with default theme to isolate issues
Mobile Display Problems
Section titled “Mobile Display Problems”Common Issues:
- Widget overlapping with mobile navigation
- Chat window too large for small screens
- Touch events not working properly
CSS Solutions:
/* Mobile-specific fixes */
@media (max-width: 768px) {
.pingstreams-widget {
bottom: 15px !important;
right: 15px !important;
z-index: 9999 !important;
}
.pingstreams-chat-window {
width: 90vw !important;
height: 70vh !important;
max-width: 350px !important;
}
}Performance Issues
Section titled “Performance Issues”Monitoring Tools:
- Google PageSpeed Insights
- GTmetrix
- BigCommerce’s built-in performance monitoring
- Browser developer tools
Optimization Strategies:
- Implement lazy loading for the widget
- Minimize initial configuration data
- Use CDN delivery when available
- Monitor script execution time
Done! Your BigCommerce Store Now Has Pingstreams! 🎉
Section titled “Done! Your BigCommerce Store Now Has Pingstreams! 🎉”Congratulations! You have successfully installed the Pingstreams live chat widget on your BigCommerce website. Your customers can now:
- Get instant support for product questions and order issues
- Receive personalized recommendations based on their browsing
- Get help with checkout and payment processes
- Track their orders seamlessly through chat
- Experience 24/7 availability for customer service
Maximize Your Investment
Section titled “Maximize Your Investment”Next Steps for Success:
Section titled “Next Steps for Success:”- Configure AI responses for common e-commerce inquiries
- Set up product recommendation workflows
- Create order tracking automation
- Implement cart abandonment recovery campaigns
- Train your team on the new chat system
Advanced BigCommerce Features:
Section titled “Advanced BigCommerce Features:”- Multi-store management for BigCommerce Enterprise
- Advanced analytics integration with BigCommerce reporting
- Webhook integration for real-time order updates
- API connections for deeper e-commerce functionality
- Custom app development for specialized needs
Ongoing Optimization:
Section titled “Ongoing Optimization:”Remember to regularly monitor and respond to incoming chat messages to provide excellent customer support through the Pingstreams live chat widget on your BigCommerce website.
Monitor these key metrics:
- Chat engagement rates
- Conversion impact from chat interactions
- Customer satisfaction scores
- Response time improvements
- Sales attribution from chat sessions
That’s it! Your Pingstreams live chat widget should now be up and running on your BigCommerce website, allowing you to engage with your customers in real-time and provide exceptional e-commerce support.
Ready to transform your BigCommerce store’s customer experience? Your Pingstreams integration is now live and ready to help you increase sales, reduce cart abandonment, and provide world-class customer support!