Settl.

Tracking / Snapchat Conversions API · WooCommerce

The Snapchat Conversions API on WooCommerce

Almost every Snapchat ad click happens on a phone, inside Snapchat's own browser, and many of those buyers pay later somewhere else. That's where a WooCommerce store loses Snap sales. Here's how the Snapchat Conversions API fits in, what Snap needs to link a sale to an ad, and how to make sure each order is counted once.

ScCid kept 90 days

Snap's click id is saved the moment someone lands, and stored on the order at checkout.

Sent when it's paid

Paid orders go to Snap as PURCHASE from the server, not from a thank-you page.

Missed orders resent

Every hour Settl checks the past week's paid orders and sends anything that didn't arrive.

The usual WooCommerce setup: Snapchat for WooCommerce

Most stores start with Snapchat for WooCommerce, the free extension listed by WooCommerce on WordPress.org and in the Woo Marketplace. It syncs your product catalog to Snapchat for Dynamic Ads, installs the Snap Pixel and, according to Woo's documentation, sets up a Conversions API token in Snap's Business Manager so it can send events server to server as well. It connects through a WordPress.com (Jetpack) account and replaces the older Snapchat Pixel for WooCommerce plugin, which you should remove (plugin page and docs, checked October 2026).

For catalog sync and Dynamic Ads it's the natural choice, and you can keep it. The questions on this page are about the purchase signal: does every paid order reach Snap, with the ad click, exactly once?

Why WooCommerce loses Snapchat sales

  • The in-app browser. A tap on a Snap ad opens your store inside Snapchat. Buyers who then switch to Safari or Chrome to pay with saved cards start a new session with new cookies, and the pixel there doesn't know about the click.
  • Coming back later. Someone sees your product on Snapchat, closes the app and buys days later by typing your URL. Without a stored click, that order looks like direct traffic.
  • Payment methods that leave your site, such as PayPal, iDEAL in a bank app, Klarna or a hosted card page. The buyer pays and closes the tab, so the order-received page where browser tags report the purchase never loads.
  • Ad blockers and strict privacy settings, which block the Snap Pixel.
  • Cookie banners and script-delay settings in optimization plugins, which can hold the pixel back on exactly the page that matters.

What Snap needs to link a purchase to an ad

Snap's event for a completed order is PURCHASE. To match it to a person and an ad, Snap uses what arrives with the event:

  • ScCid: Snapchat's click id, added to your landing URL when someone taps an ad.
  • The _scid cookie the Snap Pixel sets in the browser.
  • Hashed email and phone number (SHA-256).
  • IP address and user agent from the visit.
  • Order id, value and currency.

Which WooCommerce orders should count as PURCHASE

Snap optimizes purchase campaigns toward the purchases you report. If unpaid orders count, it learns to find people who start a bank transfer and never finish it. Only paid orders belong in Snap:

  • Processing or Completed after a successful payment: send it.
  • On hold (bank transfer, cash on delivery): wait until the order is actually paid.
  • Pending payment, Failed, Cancelled, Refunded or a checkout draft: don't send it.
  • Processing turning into Completed is the same order and must not create a second PURCHASE.

How Settl sends WooCommerce orders to Snapchat

The Settl Tracking plugin saves the ScCid when a visitor lands from a Snap ad and keeps it in a first-party cookie for 90 days. If the Snap Pixel has set its _scid cookie, the plugin reads that too. At checkout the click is stored on the order itself, and hashed email and phone go along too, which helps Snap match buyers who switched browsers before paying.

When WooCommerce marks the order paid, the plugin passes it to Settl, which sends a PURCHASE event to the Snapchat Conversions API from the server. It carries the order number as order_id, the value and currency, the ScCid and _scid, hashed email and phone, and the visitor's IP address and user agent. Custom statuses you use after payment, such as Shipped, still count as paid.

Every hour Settl asks the plugin for the paid orders of the past week and sends any that are missing, so a hosting hiccup or a slow payment confirmation doesn't cost you the sale. With server-side shopping steps switched on, page views, product views, searches, add to cart and checkout starts go to Snap from the server as well.

How Snap removes duplicates, and how to avoid double counts

Snap treats a pixel event and a Conversions API event as one conversion when they belong to the same pixel, have the same event name and share an identifier. The first check is the pixel's client_dedup_id against the API's event_id, within 48 hours. For PURCHASE there's a fallback: the pixel's transaction_id against the API's order_id, within 30 days (Snap's developer docs, checked October 2026).

Settl's plugin doesn't add the Snap Pixel to your store, so its event ids won't match a pixel from another plugin. What can match is the order: Settl sends the WooCommerce order number as order_id. If your Snap Pixel reports the same order number as transaction_id, Snap can merge the two. If it doesn't, or a second plugin also sends PURCHASE through its own Conversions API connection, pick one source for purchases.

To check, compare a week of PURCHASE events in Snap Events Manager with your paid WooCommerce orders from Snapchat. Purchases close to double the real number mean two sources are reporting the same sales.

Your options on WooCommerce (checked October 2026)

Snapchat for WooCommerce is free, published by WooCommerce, and covers catalog sync, the pixel and a Conversions API connection in one place. If Snapchat is a small channel for you, that may be all you need.

Pixel and server-side plugins such as Conversios let you configure the Snap Pixel and Conversions API next to other platforms from one settings screen. Connector services such as Datahash or AbleCDP link WooCommerce to Snap through their own platforms. A Google Tag Manager server container gives you full control if you're comfortable running and maintaining it.

Settl focuses on the purchase: paid orders only, the click kept for 90 days, sent from the server and rechecked every hour. The same plugin covers Meta, TikTok, Google Analytics 4 and Google Ads, Pinterest, X, Microsoft Advertising and Reddit, so you don't need a separate setup per platform.

How to check it works

Tap one of your own Snap ads on your phone and check that ScCid is still in the address bar when your store opens. A redirect or link shortener that drops it means no click can be saved.

Then place a real order with a payment method that leaves your site and close the tab right after paying. In Snap Events Manager, a PURCHASE with your order's value should still appear. Judge Snapchat over a week or more: buyers who saw your ad often come back later, and the saved click is what lets Snap see its part.

How to set it up with Settl

  1. 1Install the Settl Tracking plugin

    Add it in WordPress and paste your connection code from the Settl dashboard.

  2. 2Create a Conversions API token

    In Snap's Business Manager, open your pixel and generate a Conversions API token. Note the pixel id.

  3. 3Paste them into Settl

    Paid orders now go to Snapchat from the server as PURCHASE, with the saved ScCid.

  4. 4Keep one purchase source

    Make sure no other plugin sends PURCHASE separately, then test with an off-site payment.

Pricing

Monthly, cancel any time. No contract, no fee per order from Settl.

99,9% Tracking

Keep Shopify's checkout. Every paid order sent server-side to Meta, TikTok, Google, Snapchat and Pinterest.

$44.99/ month · first 10 days free, no card needed

Start with 99,9% Tracking

Pro

Your own checkout plus 99,9% Tracking and ROAS per ad, in one plan.

$54.99/ month · first 10 days free, no card needed

Start with Pro

Questions

Do I have to remove Snapchat for WooCommerce?+

No. Keep it for catalog sync and Dynamic Ads. Just make sure purchases aren't sent to Snap twice by two sources that Snap can't match.

Does Settl add the Snap Pixel to my store?+

No. On WooCommerce Settl sends Snapchat events from the server. If you want the pixel for audiences, keep it from Snapchat for WooCommerce or another plugin.

What about bank transfer and cash on delivery?+

Those orders go to Snap once WooCommerce marks them paid, not when they're placed.

Will Snap match every order to an ad?+

No. Settl sends every paid order, but whether Snap links it to a click depends on its own matching and on what the buyer allowed in your cookie banner.

Does it work on Shopify too?+

Yes. On Shopify you install the Settl app instead of the plugin; the Snapchat side works the same way.

What does it cost?+

€39,99 per month for 99,9% Tracking after 10 days free, with no contract and no per-order fees. Snapchat is included with Meta, TikTok, Google, Pinterest and the other platforms.

Related

All guides and comparisons →

Every sale back to your ads.

Get started
Snapchat Conversions API for WooCommerce · Settl