LinkJoltAnswers

Getting Started

Can I run an affiliate program without spreadsheets and manual tracking links?

How long does it take to set up an affiliate program with LinkJolt?

What is the difference between tracking links and coupon codes?

Payouts & Commissions

Approving and rejecting commissions

Can I pay affiliates in their own currency?

Can I reward top affiliates with a higher commission rate?

Does LinkJolt hold my money or process my payments?

How are recurring commissions calculated for subscriptions?

How automatic payouts work, and what the processing fee is

How do I pay my affiliates?

Stripe for tracking and Stripe for payouts are two different things

What commission rate should I offer affiliates?

What does each commission status mean?

What happens to an affiliate's commission when a sale is refunded?

When and how do affiliates actually get paid?

Which countries and currencies can automatic payouts reach?

Why is my commission still pending?

Troubleshooting

A sale is missing from my dashboard. What do I check?

An affiliate's coupon code is not being attributed. What should I check?

I installed the tracking script but clicks are not being tracked. What now?

My Stripe webhook shows 200 but no conversions are recorded. Why?

My sales suddenly stopped being tracked

My team member cannot sign in or is stuck choosing a role. How do I fix it?

Why is an affiliate conversion not showing up?

Why is my coupon code not tracking sales?

Why is my dashboard showing the wrong currency?

Linkjolt

Sign InStart Free
Troubleshooting

A sale is missing from my dashboard. What do I check?

A missing sale almost always traces to one of six causes: a webhook signing secret that no longer matches, an endpoint added in Stripe's Test mode, no tracking reference reaching checkout, a purchase outside the fixed 30 day window, an unregistered coupon or an inactive affiliate, or your plan's tracked sales limit. Check them in that order.

4 min read
Updated Sep 4, 2026

A missing sale almost always comes down to one of six things, and you can check every one yourself. Work through them in this order, most likely cause first.

1. The webhook signing secret no longer matches

Check this first, because it loses every sale rather than one. If the signing secret saved in LinkJolt no longer matches the one your processor signs with, we reject every event before it can be recorded. It usually follows an endpoint being recreated or a secret being rotated.

A mismatched signing secret records zero sales, not fewer. Re-save the secret any time you touch the endpoint in your processor.

The sign is nothing recorded at all, for every affiliate, from one date onward, plus failing deliveries in your processor. For Stripe, Paddle and Gumroad we detect it and email you. Paste the current secret again in Settings, Payment Providers.

2. The endpoint sits in Stripe's Test mode

Stripe keeps separate webhook lists for Live and Test mode, switched in the Stripe dashboard header. An endpoint added in Test mode receives only test events, so real purchases never reach LinkJolt. Unlike a bad secret it produces no failed deliveries and no alert from us, because nothing is ever sent. Add the endpoint in Live mode and save the Live signing secret.

3. No tracking reference reached the checkout

The usual cause when one sale is missing rather than all of them. The script stores the affiliate reference, but it still has to reach the payment, and it drops in two places.

  1. The script did not load there. It must run on every page an affiliate link can land on, and on the page where checkout begins. Your Integration page reports Script Active, Script Detected or Not Detected Yet, but that only proves it loaded somewhere on the domain. Open the landing page with ?tc=TEST&aff=TEST and run window.linkjolt.getTrackingInfo() in the browser console.
  2. The reference never reached the payment. The script appends it automatically only to Stripe Payment Links, Gumroad and Lemon Squeezy links on your page. If you create Stripe Checkout Sessions in your own code, pass window.linkjolt.referral yourself as client_reference_id.

For builder specific traps, read "I installed the tracking script but clicks are not being tracked. What now?".

4. The customer bought outside the 30 day window

Attribution lasts 30 days from the click and is fixed. The cookie and the browser storage copy both expire, so a purchase on day 31 is a direct sale. It is also per browser: a click on a phone and a purchase on a laptop carries nothing across, and a later click from another affiliate replaces it. Your Affiliates page shows each affiliate's clicks and when they last had one.

5. The coupon is unregistered, or the affiliate is not active

We only credit a code we hold a record of, so creating it in Stripe or Paddle is not enough, and a code registered after an order cannot match that earlier order. We match by coupon id, then promotion code id, then the code text. A redeemed Stripe promotion code carries only the promotion code id (it starts with promo_) and never the readable code, so save that id. Separately, an affiliate you rejected or suspended earns nothing, and their sales are skipped rather than recorded.

6. The sale hit your plan's tracked sales limit

The limits are $5,000 on Starter, $25,000 on Professional and $50,000 on Ultimate, measured per brand on gross sales across your billing period, and lifted on Scale. Past the limit, Stripe and WooCommerce sales are still recorded with commission calculated and marked Held: they show in your commissions list with an amber Held badge that cannot be approved, and upgrading to a plan whose limit covers the period releases them into the approval queue.

On Paddle, Lemon Squeezy, Gumroad, GoPay and Stripe subscription renewals, over-limit sales are skipped and never recorded, so upgrading afterwards does not bring them back. We email you at 80% of the limit and again when it is reached, so act on that email.

Still nothing?

Sales paid by a delayed method, such as some bank debits and vouchers, record only once the money settles, and only if your Stripe endpoint also sends checkout.session.async_payment_succeeded, which is not in our standard list. A sale flagged by our rule based self-referral checks is not missing, it is recorded with a Rejected badge. Anything created with a test mode API key stays out of live reports on purpose. If all six check out, contact support with the order id.

Tags:

troubleshootingtracking

Related questions

How long does an affiliate stay credited after someone clicks their link?

30 days. A click stores that affiliate's details in the visitor's browser for 30 days, and a purchase made in that period is credited to them. The window is fixed: there is no setting to change it per campaign or per plan.

How do I install the LinkJolt tracking script?

Copy the one line script tag from the Integration Hub in your dashboard and paste it into the head of every page a visitor can land on. Copy it rather than typing it, because the tag carries your own merchant ID and a wrong ID never raises an error.

Where do I put the script when my landing page and checkout are on different platforms?

Put the script on every page a visitor sees before they pay, starting with the landing page. It only rewrites Stripe Payment Link, Gumroad and Lemon Squeezy links for you, so for any other jump to a different domain you have to carry the tc, aff and cid parameters across yourself.

Why is my coupon code not tracking sales?

A coupon only credits an affiliate when LinkJolt holds a registration that matches the discount data your payment processor sends with that order. The usual causes are a code registered on one side only, a Stripe promotion code id that was never entered, a Paddle discount id left blank, or a code registered on the wrong campaign or with a test key.

Start your affiliate program

Launch in minutes with 0% platform fees. 3-day free trial, cancel anytime.

Start free trialBrowse all questions

Contents

1. The webhook signing secret no longer matches2. The endpoint sits in Stripe's Test mode3. No tracking reference reached the checkout4. The customer bought outside the 30 day window5. The coupon is unregistered, or the affiliate is not active6. The sale hit your plan's tracked sales limitStill nothing?