ShareCrew Docs
Setting up

Links, codes and tracking

Every order is credited to at most one creator. ShareCrew checks five signals in a fixed order and records on the commission which one won.

The five signals, in order

  1. A code. The creator's discount code, used at checkout. A code is a real WooCommerce coupon. It comes first because most short-video viewers never click anything — they type the code they heard.
  2. The link cookie. Set when someone follows a creator's /go/ link (or a ?cr= link, below) within the attribution window.
  3. WooCommerce's order attribution. A /go/ link adds utm_source=sharecrew and the creator's handle to the page it lands on, and WooCommerce's own order-attribution feature records them on the order — independently of ShareCrew's cookie.
  4. A customer lock. After a creator's sale, that customer's later orders credit the same creator for a number of days, with no code or cookie needed.
  5. Your manual assignment, in the Creator box on the order screen. It always wins, and needs a reason.

A code beats a lock. A locked customer who uses another creator's code credits that creator, and by default the lock moves to them (Another creator's code moves the lock).

A creator is never paid for their own order. Their account and email are always checked, and Also match the billing address against the creator adds a best-effort address check. A self-referral is recorded, so it shows on the order, but never paid. A paused or archived creator is skipped by the automatic pass.

Every approved creator has a main link, example.com/go/<handle>, which sends shoppers to Settings → Program → Default link destination (your home page if you leave it blank). Creators can make their own links to any page of your store in their portal, at /go/<handle>/<name>, and each registered post gets one too.

The redirect is a 302 sent with Cache-Control: no-store, private, X-LiteSpeed-Cache-Control: no-cache and X-Robots-Tag: noindex. It records a click and, if the tracking mode allows, sets the sharecrew_ref cookie for the attribution window (30 days by default, Attribution window (days)). A paused or archived creator's link still redirects but records nothing. An unknown handle answers 404.

Link base changes the go part. Changing it changes every creator's links. A creator who changes their handle (once) keeps the old one redirecting for 90 days.

The ?cr= fallback

Any page of your store can also be linked as ?cr=<handle>. A small script on the page records the click and sets the cookie in the browser, which is what makes it work on pages your cache serves before PHP runs. The parameter name is Fallback query parameter; change it only if another plugin already uses cr. The script is not loaded in code-only mode, and in consent mode it waits for marketing consent.

Tracking modes and consent

ModeCookieWhat can credit an order
Only with consent (default) Set only once the WP Consent API reports marketing consent Code, link cookie (after consent), WooCommerce order attribution, lock, manual
Always Set on every visit through a link Code, link cookie, WooCommerce order attribution, lock, manual
Codes only Never Code, lock, manual. Links still redirect and count clicks, but credit nothing.

Consent is read through the WP Consent API (wp_has_consent( 'marketing' )), which consent plugins such as Complianz, CookieYes and Real Cookie Banner provide. ShareCrew shows no consent banner of its own. With no such plugin installed, consent mode never sets the cookie: codes and locks credit orders as usual, and a link is credited only when WooCommerce's own order attribution recorded the visit.

Always credits the most orders. In the EU and UK it needs a legal basis you can show, usually consent, and the Attribution card warns while it is selected.

Caching and /go/

Never cache /go/. A cache or CDN that stores the redirect, or strips its Set-Cookie header, credits the first visitor's creator to everyone after them — silently.

Exclude every path starting with /go/ (or your link base) from every cache layer. Settings → Attribution prints these with a Copy button:

Cloudflare — cache rules and any Set-Cookie transform rule:

starts_with(http.request.uri.path, "/go/")

LiteSpeed — Do Not Cache URIs:

/go/*

nginx:

location ^~ /go/ {
    proxy_cache_bypass 1;
    proxy_no_cache 1;
    fastcgi_cache_bypass 1;
    fastcgi_no_cache 1;
}

The daily check. Every day at 05:00 site time ShareCrew requests your own /go/_probe address and checks that it answers a 302, carries its test cookie, is not a cache hit and says no-store. The result is the health pill on the Overview, with Check now to run it on demand. When it fails, it names the caching layer it saw and the fix, and emails you once per change of state.

Codes are unaffected by any of this: a typed code is credited whether or not a cookie was ever set.

Customer locks

Customer lock (days), 180 by default: after a creator's sale, the same customer's later orders credit that creator for this long. Restart the lock on every order is on by default. Set the days to 0 to turn locks off. A lock is keyed by the customer's account, or a one-way hash of their email for a guest, and is deleted the night after it expires.

Applying the code on landing

Apply the code to the cart on landing (off by default): a shopper arriving through a /go/ link finds the creator's code already in their cart. It changes your store's pricing behaviour, which is why it is off until you choose it. Otherwise a referred visitor sees no banner and no popup.

ShareCrew documentation — free plugin available on WordPress.org