Skip to main content

Overview

Connecting Shopify to Innkeepr allows you to automatically send customer, order, and product data from your Shopify store into Innkeepr.
This data powers predictive models, enriches user profiles, and enables advanced segmentation based on purchase history, lifetime value, and product preferences.
Unlike ad platforms such as TikTok or Meta, Shopify acts as a data source — it sends first-party data to Innkeepr. Once connected, Innkeepr listens for checkout, order, and customer events from your Shopify store and transforms them into Identify and Track calls inside your workspace.

Prerequisites

Technical Requirements:
  • Active Shopify store (Basic plan or higher)
  • Admin access to Shopify and Innkeepr
  • The Shopify Integration enabled in Innkeepr
  • Customer consent to use first-party purchase data for analytics and marketing purposes
Recommended setup:
  • Shopify store configured with key checkout and customer events
  • Orders contain customer identifiers such as email or User ID

Setup Instructions

Step 1: Connect Shopify to Innkeepr

  1. In Innkeepr, navigate to Connections → Data Sources
  2. Click Connect Shopify
  3. Enter your Shopify store URL (for example: yourstore.myshopify.com)
  4. You’ll be redirected to Shopify to grant Innkeepr read access to:
    • Customers
    • Orders
    • Products
    • Store metadata
  5. Approve the permissions — your Shopify store will now appear as a connected data source inside Innkeepr.

Step 2: Map Shopify Events to Innkeepr Events

After connection, map Shopify’s native events to Innkeepr’s standardized schema:
Shopify EventMapped Innkeepr EventDescription
customer_createdUser Signed UpA new customer account was created
customer_updatedUser Profile UpdatedCustomer info (e.g., address or plan) changed
checkout_startedCheckout StartedCustomer initiated checkout
order_createdOrder PlacedCustomer submitted an order
order_paidCheckout CompletedSuccessful purchase
order_refundedRefund IssuedRefund processed
product_viewed (via Shopify Pixel API)Product ViewedProduct detail page viewed
Optional:
Map custom events like loyalty status updates or subscription renewals if available through your Shopify apps or webhooks.

Step 3: Send Customer Identify Calls

When a customer interacts with your store, Innkeepr uses Identify calls to record their traits.
A typical Identify payload looks like this:
{
  "type": "identify",
  "traits": {
    "email": "user@example.com",
    "name": "Jane Doe",
    "country": "DE",
    "total_orders": 5,
    "lifetime_value": 324.50
  },
  "userId": "shopify_123456"
}
Shopify automatically provides these traits when a customer registers, updates their profile, or completes a purchase.
Innkeepr merges multiple sessions and orders under the same user profile.

Step 4: Verify Data Flow

To confirm that Shopify events are reaching Innkeepr:
  1. Open Innkeepr → Events in the top navigation bar
  2. Make sure the status is set to Live (not Paused)
  3. Look for recent events such as Order Placed, Checkout Completed, or User Signed Up
  4. Check that each event shows Type = IDENTIFY or Type = PAGE / TRACK, depending on what was sent
  5. Verify user traits (e.g., email, lifetime_value, country) in the details panel on the right
If events are missing:
  • Confirm the Shopify integration is connected under Sources → Data Sources
  • Check that the Shopify App permissions include read_customers and read_orders
  • Ensure recent data exists (Innkeepr syncs only new orders and customers)
  • Wait up to 30 minutes for the initial sync to complete

Best Practices

  • Use email or User ID as identifiers: Ensure every order or signup includes a unique customer email or ID.
  • Include monetary traits: Pass total_orders, lifetime_value, and average_order_value for better predictive accuracy.
  • Avoid duplicate tracking: Disable redundant integrations that send the same order events twice (e.g., via both Shopify and Tag Manager).
  • Leverage Identify traits: Use fields like plan, subscription_status, or preferred_category to build high-value segments.
  • Regularly audit mappings: Review event and trait mappings quarterly to catch schema changes in Shopify’s API.

Troubleshooting

Orders or Customers Not Showing in Innkeepr

Issue: Shopify events don’t appear in Innkeepr
Solutions:
  • Confirm your Shopify connection is active under Connections → Data Sources
  • Check that the Innkeepr Shopify App has correct read permissions
  • Ensure recent orders exist in the last 24 hours (Innkeepr syncs new data)
  • Wait up to 30 minutes for new events to populate

Missing Customer Traits

Issue: Events arrive but lack customer details
Solutions:
  • Ensure your Shopify checkout requires an email address or login
  • Check that your store captures customer data before purchase (for guest checkouts, traits may be limited)
  • Map trait fields (email, country, total_orders) correctly in Innkeepr

Duplicate Orders

Issue: The same order appears multiple times in Innkeepr
Solutions:
  • Check if orders are sent by multiple apps (e.g., both Shopify + third-party integrations)
  • Disable redundant webhooks or duplicate API connections
  • Keep only one active integration per order event type