Winfluencer

Beyond Likes. Into Sales.

Winfluencer Creator Analytics — App Guide
Winfluencer Creator Analytics · April 2026

Winfluencer Creator Analytics
App Support Guide

Your complete guide to every feature, tracking methodology, compliance detail, and setup flow within Winfluencer Creator Analytics.

App URL
app.winfluencer.online
Developer
API Version
2026-04
Database
NeonDB (US-East-1)
Hosting
Vercel Serverless
Embedded
Yes — Shopify Admin
01

App Overview

Winfluencer Creator Analytics is a Shopify embedded app that tracks influencer-driven traffic through the full e-commerce funnel — from the first click on a tracking link through product views, add-to-cart, checkout, and completed purchase. Each influencer receives a unique tracking link. Revenue and conversion metrics are attributed to individual creators using first-party data only — no cookies, no consent banners required.

FieldDetail
App NameWinfluencer Creator Analytics
App URLhttps://app.winfluencer.online
CategoryStore Management › Operations › Analytics
SecondaryMarketing and Conversion › Marketing › Marketing - Other
Privacy Policyhttps://winfluencer.online/privacy-policy/
API Version2026-04
Scopesread_customer_events, write_pixels, write_themes
EmbeddedYes — renders inside Shopify Admin iframe
HostingVercel serverless (app.winfluencer.online)
DatabaseNeonDB PostgreSQL (US-East-1)
Key Value Propositions
Full-Funnel Visibility
Visitors → Product Views → Cart → Checkout → Purchase per influencer
Multi-Touch Attribution
Tracks all influencer touches in a visitor's journey before purchase
Product Intelligence
Shows which products each influencer's audience buys vs. just carts
Journey Role Analysis
Classifies each influencer as Introducer, Mid-touch, or Closer
First-Party Only
Uses Shopify cart attributes and Web Pixels API — zero third-party cookies
02

Install & Onboarding Flow

The following steps describe the exact experience a merchant goes through from App Store installation to first tracking link — which reviewers should replicate during testing.

Step-by-Step Install Flow
1
Merchant clicks Install on the App Store listing
2
Shopify redirects to the OAuth consent screen — scopes requested: read_customer_events, write_pixels, write_themes
3
Merchant approves — Shopify redirects to https://app.winfluencer.online/api/auth
4
App creates a Store record in the database with a unique pixelId
5
App automatically registers the Custom Web Pixel extension on the merchant's store
6
Merchant is redirected to the Winfluencer dashboard inside Shopify Admin
7
Dashboard shows a 'Get started' prompt with instructions to enable the App Embed Block in the theme
Theme App Embed Block Activation
8
In Shopify Admin: Online Store → Themes → Customize
9
App Embeds section → Enable 'Winfluencer Tracker'
10
Save the theme. This activates the Liquid snippet that writes the wf_influencer_id cart attribute when a visitor arrives via a tracking link. One-time setup.
No Code Required. The entire install and setup process requires zero code changes from the merchant. The Web Pixel registers automatically on install. The embed block requires only a toggle in the theme editor.
03

UI Features — Complete Walkthrough

All UI is rendered inside the Shopify Admin embedded iframe using Shopify Polaris components. No external windows or pop-ups are used.

3.1 Main Dashboard (/app)

The main dashboard provides a store-wide overview of all influencer-driven performance. It is the first page shown after install.

Total Revenue
Sum of all influencer-attributed purchase revenue from item_purchased events
Total Visitors
Count of unique sessions from influencer tracking links
Conversion Rate
Percentage of influencer visitors who completed a purchase
Top Product
Product generating the most revenue from influencer traffic

Conversion Funnel — visual progress-bar funnel showing drop-off at each stage:

Visitors100%
Product Views~70%
Add to Cart~35%
Checkout~20%
Purchased~8%

Sankey Journey Flow Diagram — a Recharts Sankey diagram showing aggregate multi-touch journey flows between influencers. Node size = influencer; flow width = visitor journey count. Only appears when multi-touch Touchpoint data exists.

Top Influencers Table — top 5 influencers by revenue: Name, Platform, Visitors, Add-to-Cart, Purchases, Revenue, Conversion Rate. Each row links to the influencer profile page.

3.2 Campaigns List (/app/campaigns)

Responsive 3-column card grid. Each card shows: campaign name, status badge (Active / Ended / Upcoming), date range, influencer count, and 4 metrics — Revenue, Conversion Rate, Visitors, Purchases. Clicking a card navigates to the Campaign Detail page.

3.3 New Campaign Form (/app/campaigns/new)
FieldDetail
Campaign NameRequired text field
Start DateOptional date picker
End DateOptional date picker
Store URLBase URL for tracking links (defaults to merchant's store homepage)
InfluencersRepeatable rows: Influencer Name, @Handle, Platform (TikTok / Instagram / YouTube / Other). One row minimum required.
Tracking Link Generation
wfId:        crypto.randomUUID().replace(/-/g,'').slice(0,12)  // 12-char hex
trackingUrl: storeUrl + '?wf_id=' + wfId

// Example:
// https://my-store.myshopify.com/products/tee?wf_id=a3f9c12b8e4d
3.4 Campaign Detail Page (/app/campaigns/:id)

5 metric cards (Revenue, Visitors, Add-to-Cart, Purchases, Conversion Rate) filtered to campaign influencers. Includes:

FeatureDescription
Influencer Breakdown TablePer-influencer stats — Name, Platform, wfId, Tracking URL (Copy button), all funnel metrics, AOV. Each row links to influencer profile.
Add Influencer (Inline)Expands inline form for adding influencers to existing campaigns. Generates new wfId on submission.
Campaign SankeyJourney flow diagram filtered to this campaign's influencers only.
Product Intelligence TableProducts, Variant, Price, Carted, Purchased, Cart-to-Buy Rate, Revenue, Signal (High convert / Price friction / Strong intent / Normal).
3.5 Influencer Profile Page (/app/campaigns/:campaignId/influencers/:influencerId)

The most detailed view in the app. 6 stat cards: Revenue, Purchases, Conversion Rate, AOV, Visitors, Unique Visitors. Includes tracking link copy button.

Journey RoleDefinition
IntroducerFirst touch in the journey — brought the visitor to the brand
InfluencerMiddle touch — continued engagement during consideration
CloserLast touch before purchase — converted the visitor

Also shows: Recent Visitor Journeys (last 10, with sequence + outcome badge), 5-stage conversion funnel, Revenue Breakdown sidebar (AOV, Revenue per Visitor, Top Product, Price Friction warning), and full Product Intelligence table.

04

Tracking System — Technical Deep Dive

4.1 The wf_id Tracking Parameter

Every influencer receives a unique 12-character hex identifier embedded into their tracking link as a URL parameter:

Example Tracking Link
https://my-store.myshopify.com/products/summer-tee?wf_id=a3f9c12b8e4d
4.2 Two-Layer wf_id Persistence
LayerMechanismHow It WorksSurvives Checkout?
1Cart AttributesEmbed Block writes wf_influencer_id to Shopify cart.attributes on page loadYes
2Pixel localStorageWeb Pixel reads wf_id from URL on every page view, persists via browser.localStorage (Shopify async API)Yes
4.3 Session Management
PropertyValue
Session ID sourceShopify cart token › checkout token › crypto-generated fallback
Session TTL30 minutes of inactivity — reset on every pixel event
Persistencebrowser.localStorage (wf_session_id) + Shopify cart attributes
wf_id TTL90 days from first touch — attribution window expires after
Journey capMaximum 20 influencer touches stored per visitor
4.4 Events Tracked by the Web Pixel
Event TypeData CapturedFunnel Stage
page_viewedPage URLTop of funnel — traffic
product_viewedProduct/variant ID, title, priceProduct discovery
product_added_to_cartProduct/variant, price, quantityPurchase intent
cart_viewedCart total, item countCart engagement
checkout_startedLine items, subtotal (ex. shipping/tax)Checkout intent
checkout_completedLine items, order ID, subtotalConfirmed purchase
item_purchasedSingle line item: price × quantityPer-product revenue
Note on item_purchased events. This is not a standard Shopify pixel event. It is generated server-side by the /api/events handler when a checkout_completed event arrives. One item_purchased record is created per line item — enabling per-product revenue breakdowns without requiring the read_orders scope.
4.5 Multi-Touch Journey Tracking

The pixel maintains a journey array in localStorage containing every influencer touch for a visitor:

localStorage: wf_journey
[
  { "wfId": "a3f9c12b8e4d", "ts": 1712000000000 },
  { "wfId": "d7e2b45f9c1a", "ts": 1712010000000 }
]

This array is sent with every pixel event. The /api/events handler creates Touchpoint records for each entry with touchIndex and touchTotal. This powers the Sankey diagram and Introducer/Influencer/Closer role analysis.

05

Shopify App Store Compliance

5.1 API Scopes — Justification
ScopeJustificationStatus
read_customer_eventsRequired to receive Shopify Analytics pixel events via the Web Pixels APIPass
write_pixelsRequired to register and deploy the Custom Web Pixel extensionPass
write_themesRequired to install the App Embed Block into the merchant's active themePass
read_orders (NOT requested)Not needed — revenue computed from pixel events, not Shopify ordersN/A
read_customers (NOT requested)Not needed — no customer PII storedN/A
5.2 GDPR Mandatory Webhooks

All three mandatory GDPR webhooks are implemented and registered declaratively in shopify.app.toml:

WebhookImplementationStatus
customers/data_requestLogs request, returns 200. No PII stored so nothing to export.Pass
customers/redactDeletes Order records matching customer's Shopify order IDs. Returns 200.Pass
shop/redactImmediately deletes Events, Touchpoints, Orders, TeamMembers. Soft-deletes Store (sets deletedAt). Campaign/Influencer data retained 30 days then purged.Pass
5.3 Privacy & Data Handling
RequirementImplementationStatus
No PII collectedNo customer names, emails, phone numbers, or addresses storedPass
Anonymous identifiers onlywf_id (brand-created), session ID (cart token or crypto-generated)Pass
Cart attributes classificationwf_influencer_id and wf_session_id are functional data — no consent banner requiredPass
No cookie consent requiredAll tracking uses first-party functional data and Shopify's own analytics infrastructurePass
No data sellingPrivacy policy explicitly states data is not sold, rented, or sharedPass
Data residency disclosedNeonDB (AWS US-East-1) — stated in privacy policyPass
30-day data retention on deleteSoft-delete on uninstall, hard-delete after 30 daysPass
5.4 Web Pixel Compliance Settings
SettingValue
runtime_contextstrict — most restrictive sandbox mode
analyticstrue — required for storefront event subscriptions
marketingtrue — required for attribution pixel use case
sale_of_datanot_enabled — Winfluencer does not sell visitor data
5.5 App URLs — No Prohibited Words
RouteURLStatus
Application URLhttps://app.winfluencer.onlinePass
Auth Redirect URLhttps://app.winfluencer.online/api/authPass
App Proxy URLhttps://app.winfluencer.online/apiPass
Event Ingestion URLhttps://app.winfluencer.online/api/eventsPass
No 'shopify' in domainCustom domain app.winfluencer.online usedPass
06

Test Credentials & Setup Guide

Before You Begin. After installation, the App Embed Block must be enabled in your active theme (Online Store → Themes → Customize → App Embeds → Enable 'Winfluencer Tracker'). This is a one-time step that takes approximately 30 seconds.
6.1 Test Store Access
FieldDetail
Shopify Dev Store URLProvided in the app submission form
Admin login emailProvided in the app submission form
Admin login passwordProvided in the app submission form
App install URLhttps://app.winfluencer.online
6.2 Testing the Full Tracking Flow
1
Install the app and enable the embed block in the theme
2
Open the Winfluencer dashboard inside Shopify Admin
3
Create a new campaign: name it 'Review Test', add one influencer (any name/handle/platform)
4
Copy the generated tracking link from the influencer row
5
Open the tracking link in an incognito browser window — simulates an influencer's follower clicking their link
6
Browse a product page, add to cart, proceed to checkout, complete a purchase using Shopify's Bogus Gateway for test payments
7
Return to the dashboard — event data should appear within 10–30 seconds
8
Click into the campaign → click the influencer name → verify funnel, revenue, and journey data
6.3 Verification Checklist
RequirementImplementationStatus
Authenticates immediately after installOAuth flow completes and redirects to /app dashboardPass
Redirects to app UI immediatelyAfter auth, merchant lands on dashboard with no extra stepsPass
Mandatory compliance webhookscustomers/data_request, customers/redact, shop/redact all registeredPass
HMAC webhook verificationAll handlers use authenticate.webhook from Shopify SDKPass
Valid TLS certificateapp.winfluencer.online has valid SSL via VercelPass
Embedded app checksRenders inside Shopify Admin iframe using App BridgePass
07

Technical Architecture Summary

FrontendReact Router v7 (SSR, file-based routing)
UI LibraryShopify Polaris — native embedded app design system
BackendNode.js serverless functions (Vercel)
ORMPrisma 6 (type-safe PostgreSQL queries)
DatabaseNeonDB PostgreSQL serverless (US-East-1)
HostingVercel — atomic deploys, global CDN, auto-scaling
Shopify SDKshopify-app-react-router (OAuth, sessions, webhooks, App Bridge)
Pixel Ext.Custom Web Pixel (web_pixel_extension, strict runtime)
Theme Ext.App Embed Block (wf-tracker.liquid)
ChartsRecharts (Sankey diagram, ProgressBar)
Source CtrlGitHub (auto-deploys to Vercel on push to main)
App Proxy/apps/winfluencer/* → /api/* on Vercel
7.1 Webhook Routes
RoutePurpose
/webhooks/app/uninstalledDeletes merchant session on app uninstall
/webhooks/app/scopes_updateUpdates stored session scopes when app scopes change
/webhooks/customers/data_requestGDPR: logs request, returns 200 (no PII stored)
/webhooks/customers/redactGDPR: deletes Order records for the customer
/webhooks/shop/redactGDPR: full data deletion on shop removal (30-day soft delete)
7.2 API Routes
RoutePurpose
/api/authShopify OAuth entry point
/api/auth/callbackShopify OAuth callback — creates/updates Store record
/api/eventsPublic event ingestion endpoint (POST) — receives pixel events
/api/*App Proxy target — routes storefront API calls
7.3 Data Flow Summary
1
Visitor clicks influencer tracking link (?wf_id=abc123)
2
Embed Block (Liquid) writes wf_id to Shopify cart attributes
3
Web Pixel initializes: reads wf_id, creates session ID, loads journey array from localStorage
4
Pixel fires events (page_viewed, product_viewed, checkout_completed…) to /api/events
5
API handler resolves influencer from wf_id, creates Event + Touchpoint records in NeonDB
6
Merchant dashboard queries Event/Touchpoint tables in real-time for all analytics
No Shopify Orders API Required. Revenue is computed entirely from item_purchased events (expanded from checkout_completed line items). This means no read_orders scope is needed — a deliberate privacy-by-design decision that also avoids Protected Customer Data approval requirements.

— Winfluencer Creator Analytics · App Support Guide · April 2026