Skip to main content
  1. Home
  2. Connectors
  3. Shopify - TikTok Events API

Send every Shopify event to the TikTok Events API, server-side

Each event is resolved to a person against a 750M+ device graph before it reaches the TikTok Events API, with restored click IDs, deduplicated conversions and delivery you can audit.

4.6 out of 5 from 36 reviews on the Shopify App Store

US device IDs in the graph
750M+
Match rate on events
90%+
Identity window, per customer
Lifetime
Most brands are live
<20 min

How it flows

How a Shopify event reaches the TikTok Events API. Captured on the server, resolved to a person, then sent.

01 Capture

Captured from Shopify

One Upstack app setup that captures Shopify storefront and checkout events with the Upstack Pixel, records every order directly from Shopify, and forwards both to every tool you spend on.

See the Shopify integration
ShopifyWhat it sends
  • order_idShopify order and checkout token
  • email / phonecustomer contact from checkout
  • customer_idShopify customer record, if they have one
  • line_itemsproducts, variants and quantities
  • total / subtotal / discountorder economics

02 Understand

Resolved to one person before it leaves

Every Shopify event is matched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer rather than two strangers.

How resolution works
Upstack DataResolved before it is sent
  • IdentityMatched against a 750M+ device graph, so a phone browse and a desktop checkout resolve to one customer.
  • customer_typeNew or returning, resolved before send.
  • DeduplicationBrowser and server copies of the same purchase collapse on event ID, so nothing is counted twice.
  • Bot and fraud filteringAutomated traffic never reaches the model, because what you keep out of the training set matters as much as what goes in.

Ad platforms accept almost anything and tell you very little. These controls exist so you can see what was sent and what was accepted, rather than inferring it from a reporting gap.

03 Activate

Delivered to the TikTok Events API

Forward resolved conversions to the TikTok Events API so the algorithm optimizes on customers, not sessions.

See the TikTok Events API integration
TikTok Events APIWhat it receives
  • email / phone (hashed)Events API matching
  • ttclid / ttpattribute the click
  • event_idbrowser and server dedupe
  • value / currencyoptimize on revenue

Which events reach the TikTok Events API

Each Upstack event is mapped to the TikTok Events API event below before it is sent.

Upstack eventSent to TikTok Events API asKey data on the event
Page viewPageviewurl, referrer
Product viewViewContentcontent_id, content_type, value, currency
Add to cartAddToCartcontent_id, content_type, value, currency
CheckoutInitiateCheckoutvalue, currency, quantity
PurchasePurchasecontent_id, value, currency, order_id

Every event carries email, phone and external_id when available, hashed with SHA-256 as the Events API requires, plus the ttclid click ID captured by the Upstack Pixel for deterministic matching.

Shopify to TikTok Events API, in detail

How Shopify events reach the TikTok Events API.

TikTok ads often open your store inside TikTok’s in-app browser, which keeps its own cookies, so a ttclid stored there is gone when the shopper later buys in Safari. Upstack captures the ttclid on landing, loads the TikTok Pixel, and sends every storefront event to the Events API as well, with hashed email, phone and external_id and the same event_id on both copies.

Shopify dataSent to TikTok as
TikTok ad click

Captured by the Upstack Pixel from the landing URL, for deterministic matching.

ttclid
Checkout email and phone

Hashed with SHA-256, as the Events API requires.

email, phone
Upstack customer ID

Hashed with SHA-256.

external_id
Products on the event

On ViewContent and AddToCart; content_id on Purchase.

content_id, content_type
Order total and currency

On product, cart, checkout and purchase events.

value, currency
Order ID

On Purchase.

order_id
Items at checkout

On InitiateCheckout.

quantity

Deduplication

Both copies of each event carry the same event_id and TikTok keeps one, as long as the Pixel ID in Upstack matches the TikTok Pixel on your store. If you see duplicates, the Pixel IDs almost always differ.

Shopify’s TikTok data sharing

Shopify’s TikTok sales channel emits no matching event_id, so TikTok can’t deduplicate its events against Upstack’s. Disconnect its pixel before you switch Upstack on.

TikTok Shop orders

TikTok Shop orders flow into Shopify, so Upstack sends them to your active destinations, Meta included. To leave them out, block TikTok Shop under Settings, Order Source Exclusions.

Post-purchase upsells

An accepted upsell on an order tagged AfterSell Upsell goes to TikTok as a separate UpsellPurchase event worth only the add-on, so the order isn’t counted twice.

The catch

Shopify brands almost always have a pixel already firing.

Sending server events alongside it without a shared event ID is how a single purchase becomes two conversions and your reported ROAS quietly doubles. Upstack records one Purchase per Shopify order ID, so the pixel's copy and Shopify's own copy of an order count once.

Turn off other TikTok pixels
Where to check in the TikTok Events APIDelivery you can audit

TikTok Events Manager Test Events

then the event's match rate once live traffic is flowing.

What changes

What changes when Shopify feeds the TikTok Events API. Two gains on the TikTok Events API side, two on the Shopify side.

TikTok Events API

Server-side delivery

By default Upstack sends events to TikTok from its servers as well as through the TikTok tag, so an event an ad blocker or browser privacy setting stops in the browser still arrives from the server.

TikTok Events API

Identity-resolved events

Events sent to TikTok carry the resolved customer whenever Upstack can identify one, matched against a 750M+ device graph.

Shopify

Orders recorded from Shopify itself

Purchases also reach Upstack directly from Shopify, about 10 minutes after the order, so an order still counts when an ad blocker stopped the pixel or the shopper closed the page.

Shopify

Recognize returning customers

Shopify customer IDs, emails and phones are matched against the graph, so repeat buyers are identified across devices.

Setup

Live in under 20 minutes.

App install, no theme edits and no developer. You need admin access to your TikTok Business Center and owner or staff access to Shopify.

Upstack dashboardExample
Shopify Data source Connected
TikTok Events API Destination Healthy
Read the full TikTok Events API setup guide
  1. 01

    Connect Shopify

    In the Upstack dashboard, open System, then Data Sources, and click Connect Shopify. Approve the install in your Shopify Admin: Upstack reads products, orders and customers, and writes only its own pixel.

  2. 02

    Turn off other TikTok pixels

    In the TikTok sales channel’s Data sharing settings in Shopify, disconnect the TikTok Pixel under Customer Data Sharing. Then remove any other TikTok pixel apps and any TikTok pixel snippets in your theme.

  3. 03

    Copy your Pixel ID and create a token

    In TikTok Events Manager, copy the Pixel ID (a 20 character alphanumeric string, also called the Dataset ID) and generate an Events API access token. TikTok shows the token only once. There’s no OAuth step.

  4. 04

    Add the TikTok destination

    Under Destinations, add TikTok with the Pixel ID and the token, and keep the default Browser + Server tracking method.

  5. 05

    Link ads straight to your store

    A redirect or link shortener between the ad and your page can drop the ttclid, so point ads directly at your storefront.

  6. 06

    Check Events Manager

    Events arrive via both Browser and Server, and a test order’s Purchase appears within a few minutes. “Update Recommended” warnings are normal and need no action.

After setup

What to check in TikTok Events Manager.

  • Upstack shows the TikTok destination as Healthy.

  • The Overview and Test Events tabs show events with a Server source as well as Browser.

  • A test order’s Purchase event appears within a few minutes.

  • Clicking one of your own ads lands on a URL that carries ttclid.

Troubleshooting

Common problems and fixes.

  • No events after 10 minutes of store traffic

    Check the Pixel ID and access token for extra spaces or truncation and that the destination is Healthy. If the token was revoked or expired, generate a new one and update the destination.

  • Inflated conversion counts

    Another TikTok source is still active: the TikTok sales channel’s data sharing, a pixel app such as Omega or Mega TikTok Pixel, or a snippet in your theme’s head. Remove it and watch counts for 24 hours.

  • Low match quality

    Ads that don’t link straight to the store lose the ttclid, anonymous visitors carry fewer keys, and a Pixel ID that isn’t tied to your ad account can’t be matched to campaigns.

FAQ

Questions about Shopify and the TikTok Events API.

How do I connect Shopify to the TikTok Events API?

Connect Shopify, disconnect the TikTok Pixel in Shopify’s TikTok sales channel and remove other TikTok pixels, then add the TikTok destination with your Pixel ID and an Events API access token. Upstack sends every event from the browser and its servers with a shared event_id. Most brands are live in under 20 minutes.

Do I need to turn off other TikTok pixels?

Yes. In the TikTok sales channel’s Data sharing settings in Shopify, disconnect the TikTok Pixel under Customer Data Sharing. Then remove any other TikTok pixel apps and any TikTok pixel snippets in your theme.

Will I see duplicate conversions if I run both the TikTok Pixel and the Events API?

No, as long as the Pixel ID in Upstack matches the TikTok Pixel firing in your storefront. Upstack sends a shared event_id on every server-side event and TikTok keeps only one copy. If you see duplicates, the Pixel IDs almost always differ.

What if my event match rate is low?

TikTok’s match rate depends on how much identity data each event carries. Link TikTok ads directly to your storefront so the ttclid lands in the URL, and make sure your Shopify checkout collects email and phone.

Which events does the TikTok Events API receive?

PageView as Pageview, ViewContent as ViewContent, AddToCart as AddToCart, InitiateCheckout as InitiateCheckout and Purchase as Purchase. Orders reach Upstack directly from Shopify, even when the browser pixel is blocked.

Which customer parameters are sent to the TikTok Events API?

Every event carries email, phone and external_id when available, hashed with SHA-256 as the Events API requires, plus the ttclid click ID captured by the Upstack Pixel for deterministic matching.

How do I check that Shopify events are reaching the TikTok Events API?

Upstack marks the destination Healthy, and TikTok Events Manager shows events arriving via both Browser and Server (CAPI), with a test order’s Purchase event appearing within a few minutes. “Update Recommended” warnings in Events Manager are normal and need no action.

Do I need a developer to connect Shopify to the TikTok Events API?

No. Shopify connects as an app install with no theme edits, and most brands are live in under 20 minutes. Headless storefronts add the Upstack Pixel script instead of the theme app extension.

Do I still need the TikTok Pixel?

Keep the default Browser + Server tracking method: Upstack loads the TikTok Pixel itself and sends the same events from its servers, so a blocked browser event still arrives. Switch to Server if you don’t want the tag loading in the browser.

Are TikTok Shop orders sent to TikTok and Meta?

Yes, by default. TikTok Shop orders arrive in Shopify like any other order and go to all your active destinations. You can block them under Settings, Order Source Exclusions.

Keep reading

More on Shopify and the TikTok Events API.

Related connectors

See all 408 connectors

Get Shopify talking to TikTok Events API.

A 15-minute walkthrough of this connector on your own account.

21-day free trial, no card. Month to month.