Changeset 3426206
- Timestamp:
- 12/23/2025 12:50:37 PM (2 months ago)
- File:
-
- 1 edited
-
tracksharp/tags/1.2.2/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tracksharp/tags/1.2.2/readme.txt
r3426120 r3426206 1 === TrackSharp – Server Side Tracking for WooCommerce ===1 === TrackSharp – Server-Side Tracking for WooCommerce === 2 2 Contributors: kayavanvliet 3 Donate link: 4 Tags: woocommerce, google analytics, ga4, server side tracking, conversion tracking 3 Tags: woocommerce, ga4, google analytics, measurement protocol, server-side tracking, conversion tracking 5 4 Requires at least: 6.1 6 5 Tested up to: 6.9 … … 10 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html 11 10 12 Server-side conversion tracking for WooCommerce. Send GA4 purchase events via Measurement Protocol to rescue conversions lost to ad blockers and ITP.11 TrackSharp adds first-party server-side conversion tracking to WooCommerce, ensuring purchases are reliably recorded in Google Analytics 4 even when browser tracking fails. 13 12 14 13 == Description == 15 14 16 **TrackSharp** is a first-party server-side tracking plugin for WooCommerce that sends purchase events directly from your server to Google Analytics 4.15 Most WooCommerce stores lose conversion data without noticing. 17 16 18 🎯 **Rescue lost conversions** – Ad blockers, ITP, and browser restrictions block up to 30% of client-side tracking. TrackSharp sends events server-to-server, ensuring your conversions are counted.17 Browser-based tracking can be blocked or fail to fire due to ad blockers, browser restrictions (ITP), fast checkouts, or users closing the tab too quickly. Orders are completed in WooCommerce — but never arrive in Google Analytics 4. 19 18 20 ### Free Features 19 **TrackSharp** adds a reliable, first-party server-side tracking layer so your most important event — **Purchase** — is still recorded in GA4. 21 20 22 ✅ **GA4 Server-Side Tracking** – Send purchase events via Measurement Protocol 23 ✅ **WooCommerce Integration** – Automatic order tracking with session stitching 24 ✅ **Consent-Aware** – Honors WP Consent API categories (`statistics`, `statistics-anonymous`) 25 ✅ **Dashboard & Event Log** – See tracked orders, revenue, and event status 26 ✅ **Setup Wizard** – Simple step-by-step configuration 27 ✅ **First-Party REST API** – Collect browser events via your own domain 21 No complex Google Tag Manager setups. No server containers. Just install, connect, and verify. 28 22 29 ### Pro Features 🔒 23 = Why TrackSharp = 24 * Recover purchases missed by browser tracking 25 * Send conversions directly from your server to GA4 26 * Works alongside existing pixels (no replacement required) 27 * Built specifically for WooCommerce 30 28 31 Upgrade to TrackSharp Pro for advanced tracking capabilities: 29 = Free Features = 30 * **GA4 Server-Side Purchase Tracking** 31 Sends Purchase events via the Measurement Protocol, triggered from the WooCommerce order flow. 32 * **WooCommerce Order Stitching** 33 Links orders to GA4 sessions using first-party identifiers captured during checkout. 34 * **Dashboard & Events Log** 35 View sent events, order IDs, revenue, and delivery status. Export logs as CSV. 36 * **Setup Wizard** 37 Connect GA4 using your Measurement ID and API Secret in minutes. 38 * **Consent-Aware by Default** 39 Respects the WP Consent API (`statistics` / `statistics-anonymous`) and works with popular consent plugins. 40 * **First-Party Collector Endpoint** 41 Optional endpoint (`/wp-json/tracksharp/v1/p`) for logging and advanced setups. 32 42 33 🚀 **Meta Conversions API** – Server-side tracking for Facebook/Instagram ads with full user_data hashing 34 🚀 **Google Ads Attribution** – Capture and pass gclid, gbraid, wbraid for proper conversion attribution 35 🚀 **Enhanced Conversions** – SHA-256 hashed user data (email, phone, address) for improved GA4 matching 36 🚀 **Priority Support** – Get help directly from the developers 43 Note: Besides Purchase, TrackSharp can also send key ecommerce events to GA4 via the first-party collector (for example: `view_item`, `add_to_cart`, `begin_checkout`, `add_shipping_info`, `add_payment_info`). Purchase is always sent from the WooCommerce order flow. 37 44 38 [View Pro Plans →](https://tracksharp.com) 45 = Optional: TrackSharp Pro = 46 If you advertise on Meta or Google Ads, TrackSharp Pro adds full ad-platform attribution: 39 47 40 ### How It Works 48 * **Meta Conversions API (CAPI)** 49 Server-side events with secure SHA-256 hashed user data. 50 * **Google Ads Attribution** 51 Captures and passes `gclid`, `gbraid`, and `wbraid` for accurate conversion credit. 52 * **Enhanced Conversions** 53 Improves GA4 and Google Ads matching for Smart Bidding. 54 * **Priority Support** 41 55 42 1. A customer places an order in WooCommerce 43 2. TrackSharp captures session data and ad click identifiers 44 3. After payment, the purchase event is sent **server-to-server** to GA4 45 4. Your conversion is counted even if the browser blocked client-side tracking 56 TrackSharp Pro is optional — the free version works standalone with GA4. 46 57 47 ### Consent & Privacy 58 Learn more: https://tracksharp.nl 48 59 49 - Integrates with **WP Consent API** and popular CMPs 50 - GA4 events require `statistics` consent (configurable) 51 - Fallback behavior when no CMP is installed (configurable in settings) 60 == How It Works == 52 61 53 ### What Gets Stored 62 1. A customer checks out in WooCommerce. 63 2. TrackSharp captures first-party session and GA identifiers during checkout. 64 3. When the order is paid, a server-side Purchase event is sent to GA4. 65 4. Use TrackSharp → Dashboard and TrackSharp → Events to verify delivery. 54 66 55 - Custom table: `{prefix}_ws_events` (event audit log) 56 - Order meta: session ID, GA4 client ID, consent state 57 - Cookie: `ws_session_id` (first-party session tracking) 67 == Consent & Privacy == 58 68 59 ### Admin Pages 69 * If the WP Consent API is present, TrackSharp only sends GA4 events when the configured consent category is granted (default: `statistics` or `statistics-anonymous`). 70 * If no WP Consent API / CMP is present, TrackSharp uses a configurable fallback behavior (default: grant immediately). 60 71 61 - **Dashboard** – Overview of tracked orders and revenue 62 - **Events Log** – Raw event log with filters and CSV export 63 - **Settings** – GA4 credentials and consent configuration 64 - **Setup Wizard** – Step-by-step setup with test functionality 72 == What Data Is Stored == 65 73 66 ### Consent specifics 67 68 - If WP Consent API is active, TrackSharp checks: 69 - **Meta**: `marketing` must be granted. 70 - **GA4**: `statistics` or `statistics-anonymous` (filterable). 71 - If no WP Consent API is found, a **fallback** applies (default: “Grant immediately”). You can change this in **TrackSharp → Settings**. 72 73 ### Filters & actions (developer hooks) 74 75 76 **Filters:** 77 - `tracksharp_ga4_requires_marketing` (bool): require `marketing` for GA4 (default `false`). 78 - `tracksharp_tracker_is_consent_granted` (bool, array $payload): override final consent decision per request. 79 - `tracksharp_tracker_frontend_consent` (array): seed consent for the front-end script. 80 - `tracksharp_session_cookie_category` (string): category required to set the session cookie (default `functional`). 81 - `tracksharp_consent_category_marketing` / `tracksharp_consent_category_statistics` / `tracksharp_consent_category_statistics_anonymous` (strings): remap category slugs. 82 - `tracksharp_blocked_log_events` (array): event names to **exclude** from audit log (default `view_item`, `viewcontent`, `pageview`). 83 - `tracksharp_ga4_host` (string): override GA4 MP endpoint host. 84 85 **Actions:** 86 - `tracksharp_prune_events` (daily cron) 74 * Custom table: `{$wpdb->prefix}ws_events` (event audit log) 75 * Order meta: session ID, GA client ID, consent snapshot 76 * Cookie: `ws_session_id` (first-party session ID) 87 77 88 78 == Installation == 89 79 90 1. Upload the plugin folder to `/wp-content/plugins/` or install via the Plugins screen. 91 2. Activate the plugin. 92 3. Go to **TrackSharp → Setup Wizard** and: 93 - Enter your **GA4 Measurement ID** and **API Secret** 94 - (Pro) Configure Meta Conversions API credentials 95 4. (Recommended) Install **WP Consent API** and a CMP for consent management. 96 5. Make a test order and check **TrackSharp → Events** to verify tracking. 80 1. Install and activate the plugin. 81 2. Go to TrackSharp → Setup Wizard. 82 3. Enter your GA4 Measurement ID and Measurement Protocol API Secret. 83 4. (Recommended) Use a CMP that integrates with the WP Consent API. 84 5. Place a test order and review TrackSharp → Events. 97 85 98 86 == Frequently Asked Questions == 99 87 100 = Does this replace my GA4 /Metabrowser tags? =101 No. TrackSharp complements your browser tags with reliable **server-to-server** events. You can keep your browser tags for attribution, deduping, and non-purchase events.88 = Does this replace my GA4 browser tags? = 89 No. TrackSharp adds server-side tracking for purchases (and optionally other ecommerce events). 102 90 103 = How are events deduplicated? = 104 The plugin uses deterministic `event_id` values (e.g., `purchase_{$order_id}`) and sends a **browser breadcrumb** (audit-only) while the **server event** is the authoritative hit for GA4/Meta. On GA4, Measurement Protocol also carries session parameters for proper attribution. 91 If you are already sending a browser `purchase` event (for example via GTM), make sure you avoid double counting in GA4: 92 * disable the browser purchase tag, or 93 * configure deduplication using the same `event_id`. 94 95 = How does GA4 deduplication work? = 96 GA4 can deduplicate browser and Measurement Protocol events when they share the same `event_name` and `event_id` and are associated with the same user/session. 97 98 TrackSharp uses deterministic `event_id` values for server-side Purchase events based on the WooCommerce order ID. 99 100 = Does this work without WooCommerce? = 101 No. TrackSharp is built specifically for WooCommerce orders. 105 102 106 103 = Is it GDPR compliant? = 107 TrackSharp integrates with **WP Consent API**. GA4 is allowed under `statistics` or `statistics-anonymous` (configurable), Meta under `marketing`. With no CMP, you can choose a fallback policy (default: grant immediately). 108 109 = What cookies does it set? = 110 - `ws_session_id` — first-party session ID (functional/statistics-gated). 111 - `ws_atc` — short-lived Add-to-Cart replay cookie (marketing-gated). 112 The plugin also reads first-party copies of ad cookies (`_fbp`, `_fbc`) if present. 113 114 = Which data is stored in the database? = 115 An audit log in `{$wpdb->prefix}ws_events` with timestamp, channel, source, event name, HTTP status, consent, user-agent, and (if present) transaction ID and event ID. 116 117 = Does it support non-WooCommerce events? = 118 The built-in JS can post custom events to the first-party collector, but the S2S purchase stitching is tailored for WooCommerce. 104 TrackSharp integrates with the WP Consent API and can be configured to respect consent categories. You are responsible for your legal basis and privacy disclosures. 119 105 120 106 == Screenshots == 121 107 122 1. Dashboard – rescued conversions overview123 2. Events log with filters (channel/source/OK/HTTP)124 3. Settings – GA4 / Meta credentials125 4. Setup Wizard 108 1. Dashboard – overview of server-tracked orders and revenue 109 2. Events Log – filters, status indicators, and CSV export 110 3. Settings – GA4 credentials and consent configuration 111 4. Setup Wizard – guided setup and testing tools 126 112 127 113 == Changelog == 128 114 129 = 1.0.0 = 130 * Initial release (TrackSharp UI/branding). 131 * GA4 Measurement Protocol with Enhanced Conversions. 132 * Meta Conversions API with hashed user_data and fbp/fbc. 133 * WP Consent API integration with stats/marketing categories (+ statistics-anonymous for GA4). 134 * WooCommerce order stitching and S2S purchase sending. 135 * Events Log table + CSV export. 136 * Setup Wizard and Test Console. 137 * First-party REST collector (`/wp-json/tracksharp/v1/p`). 115 = 1.2.2 = 116 * Initial WordPress.org release 117 * GA4 server-side Purchase tracking (Measurement Protocol) 118 * Dashboard + Events Log 119 * WP Consent API integration and setup wizard 138 120 139 121 == Upgrade Notice == 140 122 141 = 1.0.0 = 142 Brand-new release. 143 144 == Privacy == 145 146 TrackSharp processes event data for analytics and advertising measurement. User-provided data sent to Meta/GA4 is hashed (SHA-256) server-side when raw values are provided. Enable a CMP with WP Consent API to ensure events are sent only when the correct categories are granted. Review your legal basis and privacy policy accordingly. 123 = 1.2.2 = 124 Initial WordPress.org release. 147 125 148 126 == Third Party Services == 149 127 150 This plugin connects to the following external services: 128 = Google Analytics 4 (Measurement Protocol) = 129 TrackSharp sends server-side events to Google Analytics 4 when configured. 130 * Service: https://www.google-analytics.com 131 * Terms: https://policies.google.com/terms 132 * Privacy Policy: https://policies.google.com/privacy 151 133 152 **Google Analytics 4 (Measurement Protocol)** 153 TrackSharp sends purchase and conversion events server-side to Google Analytics 4 using the Measurement Protocol API. This occurs when GA4 is configured with a Measurement ID and API Secret in the plugin settings.154 - Service: https://www.google-analytics.com155 - Terms: https://policies.google.com/terms 156 - Privacy Policy: https://policies.google.com/privacy134 = Meta (Facebook) Conversions API (Pro only) = 135 When using TrackSharp Pro, purchase events can be sent to Meta via the Conversions API. 136 * Service: https://graph.facebook.com 137 * Terms: https://www.facebook.com/terms.php 138 * Privacy Policy: https://www.facebook.com/privacy/policy 157 139 158 **Meta (Facebook) Conversions API** 159 TrackSharp sends purchase events server-side to Meta (Facebook) using the Conversions API. This occurs when Meta is configured with a Pixel ID and Access Token in the plugin settings. User data is hashed (SHA-256) before transmission as required by Meta. 160 - Service: https://graph.facebook.com 161 - Terms: https://www.facebook.com/terms.php 162 - Privacy Policy: https://www.facebook.com/privacy/policy 163 164 **Freemius (Licensing & Updates)** 165 This plugin uses Freemius for plugin updates and to display optional upgrade options. If you choose to upgrade to Pro, Freemius handles license management for the Pro version and exchanges data with Freemius servers. 166 - Service: https://freemius.com 167 - Terms: https://freemius.com/terms/ 168 - Privacy Policy: https://freemius.com/privacy/ 169 140 = Freemius = 141 TrackSharp uses Freemius for optional upgrades, licensing, and updates. 142 * Service: https://freemius.com 143 * Terms: https://freemius.com/terms/ 144 * Privacy Policy: https://freemius.com/privacy/
Note: See TracChangeset
for help on using the changeset viewer.