Changeset 3426147
- Timestamp:
- 12/23/2025 11:29:44 AM (2 months ago)
- File:
-
- 1 edited
-
tracksharp/trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tracksharp/trunk/readme.txt
r3426120 r3426147 1 === TrackSharp – ServerSide 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 S erver-side conversion tracking for WooCommerce. Send GA4 purchase events via Measurement Protocol to rescue conversions lost to ad blockers and ITP.11 Stop losing WooCommerce revenue in GA4. TrackSharp sends purchase events server-side and gives you a dashboard + event log to verify tracking. 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 TrackSharp is built for store owners who run ads and want reliable conversion tracking. 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 tracking can be blocked or fail to fire (ad blockers, ITP, fast checkouts, users closing the tab). TrackSharp adds a first-party, server-side layer so your most important event (Purchase) is still recorded in Google Analytics 4. 19 18 20 ### Free Features 19 = What you get (Free) = 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 * GA4 server-side Purchase tracking (Measurement Protocol) 22 * WooCommerce order stitching (first-party session ID + GA client ID capture during checkout) 23 * Dashboard + Events Log (audit table + CSV export) so you can prove what was sent 24 * Setup Wizard (Measurement ID + API secret + consent settings) 25 * Consent-aware sending via the WP Consent API (`statistics` / `statistics-anonymous`) 26 * Optional first-party collector endpoint (`/wp-json/tracksharp/v1/p`) used for logging and advanced setups 28 27 29 ### Pro Features 🔒 28 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. 30 29 31 Upgrade to TrackSharp Pro for advanced tracking capabilities: 30 = Upgrade to Pro (optional) = 32 31 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 32 If you want full ads-platform attribution (not just GA4), TrackSharp Pro adds: 37 33 38 [View Pro Plans →](https://tracksharp.com) 34 * Meta Conversions API (CAPI) with user data hashing 35 * Google Ads click ID capture and attribution fields (gclid / gbraid / wbraid) 36 * Enhanced Conversions (hashed user data for better matching) 37 * Priority support 39 38 40 ### How It Works 39 Pro plans: https://tracksharp.nl 41 40 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 41 == How It Works == 46 42 47 ### Consent & Privacy 43 1. Customer checks out in WooCommerce. 44 2. TrackSharp captures a first-party session ID and GA identifiers during checkout. 45 3. When the order is paid, TrackSharp sends a server-side Purchase to GA4. 46 4. Use TrackSharp -> Dashboard and TrackSharp -> Events to verify and troubleshoot. 48 47 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) 48 == Consent & Privacy == 52 49 53 ### What Gets Stored 50 * If the WP Consent API is present, TrackSharp only sends GA4 events when the configured consent category is granted (default: `statistics` or `statistics-anonymous`). 51 * If no WP Consent API / CMP is present, TrackSharp uses a configurable fallback behavior (default: grant immediately). 54 52 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) 53 == What Data Is Stored == 58 54 59 ### Admin Pages 60 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 65 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) 55 * Custom table: `{$wpdb->prefix}ws_events` (event audit log) 56 * Order meta: session ID, GA client ID, consent snapshot 57 * Cookie: `ws_session_id` (first-party session ID) 87 58 88 59 == Installation == 89 60 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. 61 1. Install and activate the plugin. 62 2. Go to TrackSharp -> Setup Wizard. 63 3. Enter your GA4 Measurement ID and Measurement Protocol API Secret. 64 4. (Recommended) Use a CMP that integrates with the WP Consent API. 65 5. Place a test order and review TrackSharp -> Events. 97 66 98 67 == Frequently Asked Questions == 99 68 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.69 = Does this replace my GA4 browser tags? = 70 No. TrackSharp adds server-side tracking for purchases (and optionally other ecommerce events). 102 71 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. 72 If you are already sending a browser `purchase` event (for example via GTM), make sure you avoid double counting in GA4: 73 * disable the browser purchase tag, or 74 * configure deduplication by using the same `event_id` for browser and server purchases. 75 76 = How does GA4 deduplication work? = 77 GA4 can deduplicate browser and Measurement Protocol events when the events share the same `event_name` and `event_id` (and are associated with the same user/session). TrackSharp uses deterministic `event_id` values for its server-side Purchase events (based on the WooCommerce order ID). 78 79 = Does this work without WooCommerce? = 80 No. TrackSharp is built for WooCommerce orders and will only send Purchase events when WooCommerce is active. 105 81 106 82 = 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. 83 TrackSharp integrates with the WP Consent API and can be configured to respect your consent categories. You are responsible for your legal basis and privacy policy disclosures. 119 84 120 85 == Screenshots == 121 86 122 1. Dashboard – rescued conversions overview123 2. Events log with filters (channel/source/OK/HTTP)124 3. Settings – GA4 / Meta credentials125 4. Setup Wizard 87 1. Dashboard - overview of server-tracked orders and audit metrics 88 2. Events Log - filters (channel/source/status) and CSV export 89 3. Settings - GA4 credentials and consent settings (with optional Pro upgrade links) 90 4. Setup Wizard - guided setup and test tools 126 91 127 92 == Changelog == 128 93 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`). 94 = 1.2.2 = 95 * Initial WordPress.org release. 96 * GA4 server-side Purchase tracking (Measurement Protocol). 97 * Dashboard + Events Log (audit table + CSV export). 98 * WP Consent API integration + setup wizard. 138 99 139 100 == Upgrade Notice == 140 101 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. 102 = 1.2.2 = 103 Initial release on WordPress.org. 147 104 148 105 == Third Party Services == 149 106 150 This plugin c onnectsto the following external services:107 This plugin can connect to the following external services: 151 108 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/terms156 -Privacy Policy: https://policies.google.com/privacy109 = Google Analytics 4 (Measurement Protocol) = 110 TrackSharp sends server-side events to Google Analytics 4 when you configure a Measurement ID and Measurement Protocol API Secret. 111 * Service: https://www.google-analytics.com 112 * Terms: https://policies.google.com/terms 113 * Privacy Policy: https://policies.google.com/privacy 157 114 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.com161 -Terms: https://www.facebook.com/terms.php162 -Privacy Policy: https://www.facebook.com/privacy/policy115 = Meta (Facebook) Conversions API (Pro only) = 116 When using TrackSharp Pro, purchase events can be sent server-side to Meta (Facebook) using the Conversions API. 117 * Service: https://graph.facebook.com 118 * Terms: https://www.facebook.com/terms.php 119 * Privacy Policy: https://www.facebook.com/privacy/policy 163 120 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 121 = Freemius (upgrades, Pro licensing, and updates) = 122 TrackSharp uses Freemius to display optional upgrade options and to manage licensing/updates for the Pro version. 123 * Service: https://freemius.com 124 * Terms: https://freemius.com/terms/ 125 * Privacy Policy: https://freemius.com/privacy/
Note: See TracChangeset
for help on using the changeset viewer.