Integration Features
Overview of Vendo's three tracking methods — Web Pixel, Theme Extension, and Server-side Integration.
Last reviewed July 13, 2026
Vendo combines three tracking methods to capture a complete picture of your customers’ journey — from first page view to order delivery.
Client-Side Tracking (Web Pixel)
Vendo monitors user-generated events on your storefront in real-time using Shopify’s Web Pixel API. The Vendo Web Pixel is a Shopify Custom Pixel that:
- Captures the client-side events enabled in the Shopify integration, including supported standard and custom events
- Enriches each event with device info, UTM parameters, click IDs, and user identity
- Routes events to your enabled destinations (Mixpanel, Segment, BigQuery, OneSignal, Customer.io, GTM)
Vendo provisions the Web Pixel as part of the Shopify destination workflow. Confirm that the pixel is connected and enabled rather than assuming a saved destination guarantees storefront delivery.
Automatic Enrichment
Every client-side event is automatically enriched with:
- Device info — Browser, OS, screen size, language
- Page context — URL, title, referrer
- UTM parameters — Source, medium, campaign, content, term
- Click IDs — gclid, fbclid, msclkid, ttclid, and others
- Identity — Device ID, Customer ID (when known)
For the complete list of client-side events and their properties, see Events & Data Model.
For custom event tracking, see Sending Custom Events.
Theme Extension
The Vendo theme extension is a single app embed block that loads destination SDKs on your storefront. It enables features that require JavaScript on the page:
| Destination | Features Enabled |
|---|---|
| Mixpanel | Session replay, heatmaps, autotrack (click, scroll, form tracking) |
| OneSignal | Push notification prompts, in-app messaging, tag sync |
| Customer.io | Anonymous in-app messaging, customer identification |
| Google Tag Manager | Data layer initialization, event flushing to GTM container |
Enabling the Theme Extension
- Go to Online Store > Themes > Customize
- Click App embeds in the left sidebar
- Toggle Vendo on
- Save your theme
The theme extension reads its configuration from a shop metafield (vendo.config) that Vendo manages automatically whenever you save destination settings.
Server-Side Integration
Vendo’s server-side integration imports order lifecycle data from Shopify’s backend APIs and exports it to your connected destinations. This covers events that cannot be captured in the browser — fulfillment, delivery, refunds, and historical orders.
How It Works
Shopify GraphQL API
→ Vendo Pipeline (import + normalize)
→ BigQuery (staging dataset)
→ Destination plugins (Mixpanel, Segment, OneSignal, Customer.io, BigQuery)- Shopify GraphQL API — Vendo reads orders, customers, fulfillments, and refunds from Shopify’s Admin API
- BigQuery staging — Data is normalized and stored in a per-shop BigQuery dataset managed by Vendo
- Destination export — Transformed events and customer profiles are sent to each enabled destination
For the complete list of server-side events and their properties, see Events & Data Model.
Sync Behavior
The initial historical window is selected during setup. After that import, scheduled incremental jobs process new or updated server-side records with the integration’s configured lookback. Use the destination status and job history for the actual cadence; do not rely on a fixed interval in this guide.
Historical Backfill
When you first connect the server-side integration, Vendo can import the historical window selected during setup, up to the maximum shown in the app. This backfill applies to:
- Orders, fulfillments, refunds, and deliveries
- Customer profiles with lifetime metrics
- Supported abandoned-checkout records available from Shopify for the selected workflow
Note: Client-side events (browsing, cart, checkout) are captured in real-time and cannot be backfilled.
See Historical Backfill for configuration options and timing estimates.
Destination Export
| Destination | Export Method | Data Sent |
|---|---|---|
| Mixpanel | Import API | Events + user profiles |
| Segment | HTTP API | Track + identify calls |
| OneSignal | OneSignal API | Tags + events |
| Customer.io | Track API | Events + identify calls |
| BigQuery | Streaming API | Raw events + customer properties |
Pausing & Resuming
You can pause and resume the server-side connection per destination:
- Pause — Stops creating new export jobs. Data continues to be imported to BigQuery.
- Resume — Triggers a catch-up export, then resumes incremental exports.
Identity Resolution
Vendo links anonymous browsing sessions to known customers using:
| State | Identifier | Source |
|---|---|---|
| Anonymous | Device ID | _shopify_y cookie |
| Known | Customer ID | Login or checkout completion |
You can change the identity key in the app’s User ID settings (e.g., use email instead of Shopify Customer ID).
For headless Shopify stores, see Headless Shopify Tracking for identity bridging between your custom frontend and Shopify checkout.