Skip to Content

Customer.io Integration

Vendo’s Customer.io integration streams Shopify events and customer profiles to Customer.io (CDP), enabling segmentation, journeys, and downstream messaging based on real-time commerce activity.


Overview

The Customer.io integration provides:

  • Real-time event tracking from the storefront (client-side)
  • Server-side order and profile updates from Shopify
  • Consistent customer identity across browser and backend events
  • Per-destination event controls in Vendo

Setup Instructions

Prerequisites

  • A Customer.io account with Data Pipelines enabled
  • A Customer.io Source with a Write Key
  • Admin access to your Shopify store
  • The Vendo app installed on your Shopify store

Step 1: Create a Customer.io Source

  1. Log in to your Customer.io workspace
  2. Create or select a Source in Data Pipelines
  3. Copy the Write Key

Step 2: Configure in Vendo

  1. Open the Vendo app in your Shopify admin
  2. Navigate to Integrations > Customer.io
  3. Enter your Write Key
  4. Save the configuration

Step 3: Select Events

You can enable/disable events in the Events tab for Customer.io.

Step 4: Enable Anonymous In-App Messaging

Anonymous in-app messaging is configured through the theme extension:

  1. In Shopify admin, go to Online Store > Themes
  2. Click Customize for your live theme
  3. Open App embeds
  4. Toggle on Customer.io In-App Messaging
  5. Paste your Write Key and save

Events Tracked

Client-Side Events

Captured in the browser and sent in real time:

Vendo EventDescription
Page ViewedAny page view
Product ViewedProduct detail page
Collection ViewedCollection/category page
Search SubmittedSearch performed
Product Added To CartItem added to cart
Product Removed From CartItem removed from cart
Cart ViewedCart page view
Checkout StartedBegin checkout
Checkout Contact Info SubmittedContact info step
Checkout Address Info SubmittedAddress step
Checkout Shipping Info SubmittedShipping step
Payment Info SubmittedPayment step
Checkout CompletedPurchase confirmed
Custom EventsShopify Customer Events (if enabled)

Server-Side Events

Synced from Shopify backend:

Event NameDescription
Order ReceivedNew order created
Order FulfilledOrder shipped
Order DeliveredOrder delivered
Order RefundedFull refund
Order Partially RefundedPartial refund
Cart AbandonedCheckout not completed
User Profile UpdateIdentify/profile sync
Products PurchasedPer-line-item tracking (disabled by default)

User Traits (Properties)

Vendo sends standard ecommerce and user properties including:

  • Order totals, currency, and line items
  • Product data (name, SKU, variant, category)
  • UTM parameters and click IDs (gclid, fbclid, etc.)
  • Customer profile fields (email, name, phone)

User Identification

Vendo identifies users using:

  • shopify_customer_id or customer_id when available
  • Browser distinct_id for anonymous sessions
  • Automatic identify calls for profile updates

Example Payloads

Track Event

{ "type": "track", "event": "product_viewed", "userId": "123456", "anonymousId": "anon_abc123", "properties": { "product_id": "gid://shopify/Product/1", "title": "Sample Product", "price": 10.0, "currency": "USD" }, "timestamp": "2026-01-17T12:34:56.000Z" }

Identify (Profile Update)

{ "type": "identify", "userId": "123456", "traits": { "email": "customer@example.com", "firstName": "Jane", "lastName": "Doe" }, "timestamp": "2026-01-17T12:34:56.000Z" }

What to Expect in Customer.io

  • Events appear under your Source in Data Pipelines
  • Identify calls update profiles in the People workspace
  • You can build segments and journeys from both browser and server events

Anonymous In-App Messages

Vendo supports Customer.io anonymous in-app messaging by loading the in-app snippet through the theme extension. You still configure the actual messages in the Customer.io UI. For more details on anonymous in-app messaging behavior and limitations, see Customer.io’s guide:

https://docs.customer.io/journeys/anonymous-in-app/ 


Troubleshooting

No events in Customer.io

  • Confirm the Write Key is correct
  • Ensure the Customer.io integration is enabled in Vendo
  • Check whether events are enabled in the Events tab

Only server-side events are showing

  • Ensure the web pixel is installed and enabled
  • Confirm storefront traffic is reaching the pixel

Profiles not updating

  • Verify that Shopify customer emails/IDs are present
  • Ensure User Profile Update is enabled in Events
Last updated on