Title: Trackity for WooCommerce
Author: trackity
Published: <strong>20 de maig de 2026</strong>
Last modified: 28 de juliol de 2026

---

Cerca extensions

![](https://ps.w.org/trackity-for-woocommerce/assets/icon-256x256.jpg?rev=3539646)

# Trackity for WooCommerce

 Per [trackity](https://profiles.wordpress.org/trackity/)

[Baixa](https://downloads.wordpress.org/plugin/trackity-for-woocommerce.1.0.20.zip)

 * [Detalls](https://ca.wordpress.org/plugins/trackity-for-woocommerce/#description)
 * [Ressenyes](https://ca.wordpress.org/plugins/trackity-for-woocommerce/#reviews)
 *  [Instal·lació](https://ca.wordpress.org/plugins/trackity-for-woocommerce/#installation)
 * [Desenvolupament](https://ca.wordpress.org/plugins/trackity-for-woocommerce/#developers)

 [Suport](https://wordpress.org/support/plugin/trackity-for-woocommerce/)

## Descripció

Trackity for WooCommerce is the official WordPress client for the Trackity SaaS 
analytics service (https://trackity.com). The plugin is non-functional on its own—
it requires an active Trackity account and API key. Once a merchant connects the
store, the plugin sends order, checkout, product, customer, attribution, click identifier,
browser, and runtime error data to Trackity for analytics, attribution, and ad-platform
conversion tracking.

Tracking is inactive until the merchant connects the plugin. Disconnecting the plugin
removes local Trackity credentials and stops the storefront script and event delivery.

### External services

This plugin connects to the Trackity API, a third-party SaaS service operated by
Trackity. Connection to this service is required for the plugin to function — without
it the plugin performs no tracking and sends no data.

**Service:** Trackity Analytics
 **Provider:** Trackity (https://trackity.com) **
API endpoint:** https://api.trackity.com **Privacy Policy:** https://www.trackity.
com/privacy-policy/ **Terms & Conditions:** https://www.trackity.com/terms-and-conditions/

**What is sent to Trackity, when, and why:**

 1. _During connection:_ the store URL, the merchant-supplied Trackity API key, and
    a CSRF state token are sent to `https://api.trackity.com/api/woocommerce/oauth/
    authorize` and `/api/woocommerce/oauth/exchange`. This is required to authenticate
    the store against the merchant’s Trackity account.
 2. _When a WooCommerce order, customer, or product event fires:_ the relevant order/
    customer/product payload (including billing/shipping address, email, line items,
    totals, and tracking attribution captured on the storefront) is sent to `https://
    api.trackity.com/api/woocommerce/webhooks`. This is required for analytics and 
    ad-platform conversion reporting.
 3. _On every storefront page load while connected:_ a JavaScript file is requested
    from `https://api.trackity.com/pixel/global-script`. That script initialises the
    ad-network pixels (Meta, Google Ads, TikTok, Microsoft Bing, LinkedIn, Snapchat,
    Reddit, Pinterest) that the merchant has connected inside the Trackity dashboard.
    The set of pixels is merchant-specific and changes whenever the merchant connects
    or disconnects an ad platform in Trackity, which is why it cannot be bundled statically
    with the plugin. The script is loaded asynchronously and is only injected after
    the merchant has explicitly connected the plugin.
 4. _On storefront pixel events (page view, product view, add to cart, begin checkout,
    payment info, purchase, runtime errors):_ the corresponding event payload is sent
    to the matching `/pixel-events/*` endpoint at `https://api.trackity.com`.

The Trackity service is governed by Trackity’s Privacy Policy and Terms & Conditions,
linked above. Site owners using this plugin are responsible for disclosing the use
of Trackity (and any ad-platform pixels they enable through it) in their own site
privacy policy and for obtaining any visitor consent required by their local data-
protection law (GDPR, CCPA, etc.). The plugin registers WordPress personal-data 
exporter and eraser callbacks so order tracking data can be exported or erased through
Tools  Export Personal Data and Tools  Erase Personal Data.

## Instal·lació

 1. Upload the plugin folder to `/wp-content/plugins/`.
 2. Activate Trackity for WooCommerce in WordPress.
 3. Go to the Trackity admin page.
 4. Enter your Trackity API key and connect the store.

## PMF

### Does tracking start immediately after activation?

No. Tracking starts after a store administrator connects the plugin with a Trackity
API key.

### Can I disconnect the plugin?

Yes. Use the Disconnect button on the Trackity admin page.

## Ressenyes

No hi ha ressenyes per a aquesta extensió.

## Col·laboradors i desenvolupadors

«Trackity for WooCommerce» és programari de codi obert. La següent gent ha col·laborat
en aquesta extensió.

Col·laboradors

 *   [ trackity ](https://profiles.wordpress.org/trackity/)

[Traduïu «Trackity for WooCommerce» a la vostra llengua.](https://translate.wordpress.org/projects/wp-plugins/trackity-for-woocommerce)

### Interessats en el desenvolupament?

[Navegueu pel codi](https://plugins.trac.wordpress.org/browser/trackity-for-woocommerce/),
baixeu-vos el [repositori SVN](https://plugins.svn.wordpress.org/trackity-for-woocommerce/),
o subscriviu-vos al [registre de desenvolupament](https://plugins.trac.wordpress.org/log/trackity-for-woocommerce/)
per [fisl de subscripció RSS](https://plugins.trac.wordpress.org/log/trackity-for-woocommerce/?limit=100&mode=stop_on_copy&format=rss).

## Registre de canvis

#### 1.0.20

 * Fix: Capture Reddit `_rdt_uuid` first-party identity cookie and include it in
   CAPI events as `user.uuid` — enables Reddit to match anonymous page_viewed and
   add_to_cart events that have no email and no active click ID.

#### 1.0.19

 * Fix: Purchase `eventId` sent by the browser pixel now uses the fully-scoped `
   woocommerce_order.created_<host>_<orderId>` format, matching the server CAPI 
   path — enables platform-level purchase deduplication on Meta, TikTok, Pinterest,
   Snapchat, and Reddit.
 * Fix: Checkout event IDs (`begin_checkout`, `checkout_contact_info_submitted`,`
   payment_info_submitted`) now use a sessionStorage-scoped ID instead of the raw
   WooCommerce cart token. The session ID is cleared after purchase so subsequent
   checkouts in the same browser session generate a fresh ID and are no longer silently
   dropped by the DB unique constraint.

#### 1.0.18

 * Fix: Browser-pixel event IDs for `begin_checkout`, `checkout_contact_info_submitted`,
   and `payment_info_submitted` now use the cart token as a stable anchor (`<cart_token
   >`, `<cart_token>_contact`, `<cart_token>_payment`) on both PHP and JavaScript
   sides — previously PHP generated a random ID on every call, causing duplicate
   CAPI conversions when both paths fired.
 * Fix: Purchase `eventID` sent by the browser pixel is now the WooCommerce order
   ID, matching the server CAPI path — enables platform-level deduplication on Meta,
   TikTok, Pinterest, Reddit, and Snapchat.
 * Fix: PHP `handle_add_to_cart` no longer sends a redundant server-side pixel event.
   The browser JS covers this reliably; PHP had no stable shared ID, which caused
   double-counting on every add-to-cart.
 * Fix: `build_common_payload` now unsets `eventId` and `transactionId` from `$extra`
   before the generic merge loop, preventing sanitized values from being silently
   overwritten by unsanitized originals.

#### 1.0.17

 * Fix: Compact cart blob now encodes the real click-capture timestamp alongside
   each click ID (`value|timestamp` format). The server transformer reads this timestamp
   so time-decay attribution uses the actual click time instead of the synthetic«
   order creation − 1 hour» fallback. Older plugin versions without the timestamp
   continue to work unchanged via the fallback.

#### 1.0.16

 * Fix: Device fingerprint migration now handles both the `fp_` prefix strip and
   short hashes from pre-padStart versions — old values trigger a fresh 8-character
   base-36 regeneration rather than carrying forward a length-mismatched hash.
 * Fix: `conversionValidation.botInfo` is now an object `{ isBot, signals, confidence}`
   matching the Shopify pixel shape, instead of a raw signals array.

#### 1.0.15

 * Fix: WC Store API cart refresh now aborts after 3 seconds and falls back to DOM
   scraping, preventing `begin_checkout` from hanging if the Store API is slow or
   unavailable.

#### 1.0.14

**Attribution & click ID**
 * Fix: `_gcl_gb` cookie now correctly assigned to `wbraid`
when the value starts with `WB`, and `gbraid` otherwise — prevents mis-attribution
of web-to-app Google campaigns. * Fix: Meta `_fbp`/`_fbc` cookies now stored in 
the v2 nested blob with a 90-day expiry when real click evidence exists, so returning
Meta visitors retain full attribution context across sessions. * Fix: Meta `_fbp`/`
_fbc` now also included for returning visitors who originally clicked a Meta ad 
in a prior session — stored v2 blob’s `fbclid` entry used as cross-session click
evidence. * Fix: Snapchat URL click params extended with `scid` alias; Taboola extended
with `tabclid`; Snapchat `_scid` and TikTok `_ttp` cookies now captured into the
v2 nested blob. * Fix: Snapchat, Reddit, and Twitter referrer platform entries added
to cross-platform sharing detection.

**Event payloads**
 * Fix: `productCollections` in `product_viewed` now sends a 
flat string array (e.g. `["Shoes", "Sale"]`) matching the Shopify pixel shape. *
Fix: `attributionData` field now included in all event payloads — active-window-
filtered view of the v2 blob with `daysRemaining`/`hoursRemaining` per entry. * 
Fix: `productViewTiming` in `add_to_cart` now sends the full object shape (`{ productId,
viewTimestamp, addToCartTimestamp, millisecondsBetween }`). * Fix: `funnelTiming`
in `begin_checkout` now includes `millisecondsBetween` alias. * Fix: `trackityClientId`
field added to common event payload alongside `clientId`. * Fix: Product URL in `
product_viewed` now strips query parameters. * Fix: `lidc` added to LinkedIn URL
click params.

**Checkout & purchase**
 * Fix: `payment_info_submitted` now re-fires at order submit
with the final payment method when the customer changed it after the initial event.*
Fix: `checkout_contact_info_submitted` now fires on WooCommerce block checkout themes—
email field selector extended to check `#email`, `.wc-block-components-text-input
input[type="email"]`, and `input[name="email"]`. * Fix: `emitPurchase` now writes
a permanent per-order dedup key (`_trackity_purchase_<orderId>`) to localStorage
before firing, preventing re-fire if the order-received page is revisited after 
the 24-hour TTL expires. * Fix: `begin_checkout` cart context now refreshed from
the live WC Store API (`/wp-json/wc/store/v1/cart`) after coupon application, capturing
server-side discount and shipping changes DOM scraping misses. Falls back to DOM
parsing when unavailable.

**Storage & deduplication**
 * Fix: Flat tracking blob now dual-written under `_trackity_tracking_params`(
Shopify-compatible key) in addition to `trackity_wc_tracking_data`. * Fix: Per-click-
ID `_utm`, `_traffic`, and `_device` localStorage sub-keys now written alongside
each captured click ID (e.g. `_trackity_gclid_utm`), matching Shopify pixel. * Fix:`
_trackity_attribution` legacy flat blob now written to localStorage on every page
load for server-side fallback readers. * Fix: Expired individual `_trackity_*` localStorage
keys cleaned up when their parent v2 entry expires. * Fix: Storage keys renamed 
to match Shopify pixel: `_trackity_device_fingerprint`, `_trackity_sent_events`.*
Fix: In-memory dedup cache added as fast path before localStorage reads (max 100
entries), mirroring Shopify pixel’s `trackingDedupeCache`.

**Device fingerprint**
 * Fix: Device fingerprint no longer prefixed with `fp_` —
bare hash matches Shopify pixel format, enabling cross-platform device matching.
Existing `fp_*` values migrated automatically. * Fix: Fingerprint hash now uses `
padStart(8, '0')` producing a consistent 8-character base-36 string identical to
Shopify pixel output.

**Bot detection & conversion validation**
 * Fix: Bot signal names aligned — `headless_ua``
headless`, `empty_languages`  `no_languages`. * Fix: `conversionValidation` shape
now matches Shopify: `{ hasValidValue, hasRealisticTiming, hasSuspiciousBehavior,
isLikelyValid, botInfo }`.

**Observability**
 * Fix: Structured pixel health logging via `pixelLog()` — sends
errors, purchase confirmations, and API failures to `/pixel-events/logs`, matching
Shopify pixel’s log-to-server behaviour.

#### 1.0.13

 * Fix: Meta `_fbp`/`_fbc` cookies now included for returning visitors who originally
   clicked a Meta ad in a prior session — the stored v2 blob’s fbclid entry is checked
   as cross-session click evidence, covering ITP-cleared cookie scenarios.
 * Fix: Snapchat `_scid` browser-identity cookie now captured into the v2 nested
   blob on pages without a URL `ScCid` param, so the server’s attribution extractor
   finds Snapchat context for returning visitors.
 * Fix: TikTok `_ttp` pixel token now captured into the v2 nested blob alongside`
   ttclid`, matching Meta’s `_fbp` handling for browser identity.
 * Fix: `checkout_contact_info_submitted` now fires correctly on WooCommerce block
   checkout themes — email field selector extended to also check `#email`, `.wc-
   block-components-text-input input[type="email"]`, and `input[name="email"]` in
   addition to `#billing_email`.
 * Fix: `payment_info_submitted` now re-fires at order submit with the final selected
   payment method when the customer changed their method after the initial event,
   preventing the server from recording a stale payment method.

#### 1.0.12

 * Fix: `productViewTiming` in `add_to_cart` now sends the full object shape (`{
   productId, viewTimestamp, addToCartTimestamp, millisecondsBetween }`) matching
   the Shopify pixel, so server-side funnel analysis reads the same field names 
   from both platforms.
 * Fix: `funnelTiming` in `begin_checkout` now includes `millisecondsBetween` alias
   alongside `millisecondsFromAddToCart` for server parity.
 * Fix: Flat tracking blob now dual-written under `_trackity_tracking_params` key(
   Shopify-compatible) in addition to the existing `trackity_wc_tracking_data` key.
 * Fix: Product URL in `product_viewed` now strips query parameters, matching Shopify
   pixel behaviour.
 * Fix: `trackityClientId` field added to common event payload alongside `clientId`
   to disambiguate Trackity visitor ID from any Shopify browser client ID.
 * Fix: `lidc` added to LinkedIn URL click params.
 * Fix: Expired individual `_trackity_*` localStorage keys now cleaned up when their
   parent v2 entry expires.

#### 1.0.11

 * Stable tag bump to ensure deployment of all v1.0.10 fixes.

#### 1.0.10

 * Fix: AJAX add-to-cart from shop/category/homepage listings now sends a fully 
   enriched `add_to_cart` payload (title, price, SKU, type, image). PHP builds a`
   productCache` map of all visible products on archive pages; JS initializes `window.
   trackityWooProductCache` from it so the `added_to_cart` handler can enrich events
   without a prior product-page visit.

#### 1.0.9

 * Fix: `begin_checkout` checkout payload now built via `shopifyCheckoutFromCart()`
   instead of an inline object, giving `lineItems` the correct Shopify variant shape(`
   variant.price.amount`, `finalLinePrice`) consistent with the `purchase` event
   and including `discountApplications` and `giftCards` automatically.
 * Fix: Cart totals and applied coupons in `begin_checkout` now reflect post-AJAX
   state — `wireCartContextRefresh` hooks into WooCommerce’s `updated_cart_totals`
   event to refresh `CONFIG.pageContext.cart` from the live DOM after coupon application
   without a page reload.

#### 1.0.8

 * Fix: `discountApplications`, `giftCards`, and `customer.acceptsMarketing` fields
   now included in `purchase` event checkout payload (`emitPurchase` was building
   its own inline checkout object that was missing these fields added to `buildCheckoutFromOrder`
   in earlier versions).
 * Fix: `giftCards` field added to all three checkout builders (`buildCheckoutFromCart`,`
   buildCheckoutFromOrder`, `mergeCheckout`) to ensure consistent payload shape 
   across begin_checkout and purchase paths.
 * Fix: `cartId` and `lineItemCount` now included in `add_to_cart` event; falls 
   back to `collectTrackingData().cart_token` when `pageContext.cart` is null (product
   pages), so the cart token is captured even when the full cart context is unavailable.

#### 1.0.7

 * Fix: Fallback UUID generation now produces RFC-4122 v4 format (was `trk_<random
   >` which is incompatible with Shopify pixel UUID format).
 * Fix: Device fingerprint now appends `_fallback_<timestamp>` when fewer than 3
   browser signals are available, matching Shopify pixel behaviour.
 * Fix: Flat tracking data now written to both localStorage and sessionStorage simultaneously(
   matching Shopify pixel’s dual-write approach).
 * Fix: Per-click-ID individual storage keys (`_trackity_{param}`, `_trackity_{param}
   _expiry`, `_trackity_{param}_creation`) now written alongside the v2 blob so 
   server-side code reading individual keys finds them.
 * Fix: Attribution parameter cleanup now runs on a config-driven 24-hour periodic
   interval in addition to the one-shot page-load timer.

#### 1.0.6

 * Fix: JSON payloads now serialized with a circular-reference guard and function
   stripper, preventing rare serialization errors from WooCommerce plugin-injected
   objects.
 * Fix: `cartId` and `lineItemCount` now included in add_to_cart payloads, matching
   Shopify pixel behaviour.
 * Fix: `giftCards` field added to checkout and purchase payloads (always empty 
   array — WooCommerce has no native gift card mechanism).

#### 1.0.5

 * Improvement: Attribution tracking params now include per-platform extended metadata(
   conversion window max, engaged-view window, cookie expiry) alongside the standard
   attribution window days.
 * Improvement: Add-to-cart AJAX handler enriches payload from cached product data
   on archive/collection pages where full product context is not in the page.
 * Improvement: Discount codes and customer marketing consent flag are now forwarded
   in the checkout and purchase payloads.
 * Improvement: Product categories are forwarded as collections in the product-viewed
   payload.
 * Improvement: Storage read now retries up to two times on transient failure before
   returning null.
 * Fix: fbclid validation updated to accept 10–14 character identifiers with mixed
   alphanumeric content.
 * Fix: Klaviyo attribution window and click-id params (`kx_email`, `_kx`) are now
   captured and stored in the tracking blob.

#### 1.0.4

 * Fix: Meta _fbp/_fbc cookies now only forwarded when genuine click evidence exists,
   preventing non-Meta traffic from being attributed to Meta.
 * Fix: add_to_cart events are no longer deduplicated, matching Shopify pixel behaviour.
 * Fix: purchase event now sends a minimal fallback payload if the main handler 
   throws, ensuring conversions are never silently lost.
 * Fix: add_to_cart, begin_checkout, and purchase events now retry up to 2 times
   with exponential backoff on network failure.
 * Fix: pixel API key now passed to storefront JS config for request authentication.

#### 1.0.0

Initial release.

## Meta

 *  Versió **1.0.20**
 *  Darrera actualització **fa 3 setmanes**
 *  Instal·lacions actives **Menys de 10**
 *  Versió del WordPress ** 5.8 o posterior **
 *  Provada fins a **6.9.7**
 *  Versió del PHP ** 7.4 o posterior **
 *  Idioma
 * [English (US)](https://wordpress.org/plugins/trackity-for-woocommerce/)
 * Etiquetes
 * [analytics](https://ca.wordpress.org/plugins/tags/analytics/)[attribution](https://ca.wordpress.org/plugins/tags/attribution/)
   [conversion tracking](https://ca.wordpress.org/plugins/tags/conversion-tracking/)
   [woocommerce](https://ca.wordpress.org/plugins/tags/woocommerce/)
 *  [Vista avançada](https://ca.wordpress.org/plugins/trackity-for-woocommerce/advanced/)

## Valoracions

Encara no s'ha enviat cap ressenya.

[La vostra ressenya](https://wordpress.org/support/plugin/trackity-for-woocommerce/reviews/#new-post)

[Visualitza totes les ressenyes](https://wordpress.org/support/plugin/trackity-for-woocommerce/reviews/)

## Col·laboradors

 *   [ trackity ](https://profiles.wordpress.org/trackity/)

## Suport

Teniu quelcom a dir? Necessiteu ajuda?

 [Visualitza els fòrums de suport](https://wordpress.org/support/plugin/trackity-for-woocommerce/)