Conversion tracking & creator attribution

How a sale gets attributed back to the creator who drove it — on Shopify, on WooCommerce, on a custom cart, or on a checkout you don't control at all.

Four ways to attribute a sale

You can use any one of these on its own, or combine them. When more than one signal is present on the same order, the most specific one wins.

Strongest

Click ID

Every click on a creator's tracking link gets a unique if_click id. Capture it on your landing page and send it back with the order. Identifies the exact click, not just the creator.

Strong

Tracking link

Each creator gets a short link. We record the click and pass if_ref through to your site, so the referral survives the hop even when no cookie of ours can.

Strong

Discount code

Mint a unique code per creator from the collaboration page. Any order carrying that code pays that creator. Needs no script, no cookie and no platform integration.

Fallback

UTM parameters

If all you have are UTMs, we'll match them to a creator's link where we can. Least precise, so it sits last.

Server-to-server conversion API

For any checkout you can't put a script on — hosted ticketing, a booking system, an invoicing flow, a native app. Your server POSTs the order to us within seconds of the purchase. This is the most reliable option available, because nothing depends on the customer's browser.

curl -X POST https://influenceflow.io/analytics/api/webhook/conversion/ \
  -H "Authorization: Bearer $INFLUENCEFLOW_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "campaign_id": 123,
    "platform": "eventbrite",
    "order": {
      "id": "EB-88213",
      "click_id": "9f2a4c61-8d3e-4a17-9b52-1c7f0e5d3a44",
      "total": "46.60",
      "subtotal": "43.00",
      "currency": "USD",
      "status": "completed",
      "discount_codes": ["WILL20"],
      "email": "customer@example.com"
    }
  }'
Order fields
Field Required Notes
idYesYour order id. Used to de-duplicate, so resending the same order is safe.
totalYesGross amount the customer paid. This is what revenue and GMV report.
click_idNoThe if_click value from the tracking link. Strongest attribution signal.
if_refNoThe tracking link's short code, if you captured that instead.
subtotalNoAmount before booking fees, tax and shipping. Set your campaign's commission basis to net product revenue and creators are paid on this rather than on the gross.
currencyNoISO code. Defaults to USD. Amounts are stored as sent and never converted.
discount_codesNoArray. An exact match against a creator's code attributes the sale.
statusNocompleted, pending, refunded, chargeback or cancelled.
emailNoCustomer email, for de-duplication and reporting.
Refunds

POST the same order id again with a refund flag. The commission is clawed back automatically, and a redelivered refund never claws back twice.

{
  "campaign_id": 123,
  "order": {
    "id": "EB-88213",
    "total": "46.60",
    "refunded": true
  }
}

For a partial refund, send refund_amount and your own refund_id instead. For a chargeback, set refund_kind to chargeback — that always reverses the full sale.

Getting an API key: Generate one from Settings → API Keys in your brand dashboard. Test-mode keys are available so you can verify the whole flow before a single real order goes through. Send the key as an Authorization Bearer header or an X-API-Key header.

Platform integrations

If you're on a supported platform, orders and refunds flow in on their own with no code to write.

PlatformHow
ShopifyConnect your store; orders, refunds and per-creator discount codes sync automatically.
WooCommercePoint a WooCommerce order webhook at our endpoint; we normalise the payload for you.
Anything elseThe server-to-server API above, or the JavaScript pixel if you can add a script to your confirmation page.

What happens after a conversion lands

The sale is attributed to a creator, commission is calculated against your campaign's rate and basis, and it becomes payable through the same payout rails as the rest of the campaign. Refunds reverse the commission. Everything is visible on the campaign's analytics page, and exportable as CSV.

Want help wiring this up?

Tell us what your checkout is and we'll tell you exactly which of the four methods to use.

Talk to us

We use essential cookies to make our site work. With your consent, we also use analytics cookies to understand how you use our site so we can improve it. Learn more