Showing

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

Confirm the exact code is registered against the affiliate, that you filled in the ID field your processor actually sends, and that the affiliate is not rejected or suspended. Stripe promotion codes need their promo_ ID.

2 min read
Updated Oct 28, 2026

When a coupon based sale is not attributed, the issue is usually a mismatch between what your processor sends us and what is registered against the affiliate in LinkJolt.

Check the registration

LinkJolt only attributes a coupon it knows about. Open Campaigns, then the Coupons tab, and confirm the exact code is listed there against the right affiliate and campaign, with the right provider (Stripe coupon, Paddle discount, Polar discount, Creem discount, Lemon Squeezy discount or Apple offer code).

Check how codes are matched

Your processor decides what we have to match on, so the ID field matters as much as the code:

  1. Stripe coupon applied directly: the Coupon Code you register has to match the Stripe coupon's own ID.
  2. Stripe promotion code typed at checkout: fill in "Stripe Promotion Code ID (optional)". Stripe sends only that ID on the sale, never the code the customer typed. It starts with promo_ and sits on the coupon's page in Stripe. For a code you registered earlier, open the actions menu on its row and choose "Edit Promotion Code ID" instead of registering it again.
  3. Paddle: fill in "Paddle Discount ID", which starts with dsc_, because Paddle sends the discount ID rather than the code.
  4. Polar: register the same code your customers type. Polar sends the code with the sale, so "Polar Discount ID (optional)" can stay blank.
  5. Creem: register the same code your customers type. Creem sends the code and the discount ID with the sale, so "Creem Discount ID (optional)" can stay blank unless you renamed the code in Creem.
  6. Lemon Squeezy: register the same code your customers type, and save a Lemon Squeezy API key under Integrations, on the Payment Links tab. Lemon Squeezy's webhook never names the code, so LinkJolt asks for it with that key. Without the key, with a key for a different store, or with a test mode key on a live order, no Lemon Squeezy code is credited.
  7. Apple: register the exact offer identifier from App Store Connect. It is case sensitive.

If a Stripe promotion code sale is not attributing, a blank Stripe Promotion Code ID is the first thing to check.

Coupon matching covers Stripe, Paddle, Polar, Creem, Lemon Squeezy and Apple. On Stripe it runs on checkout sales, so orders that reach us through the WooCommerce plugin, or charges your server creates directly, are attributed by affiliate link rather than by code. Gumroad and GoPay track links rather than coupons.

Check the affiliate status

A rejected or suspended affiliate earns nothing, even with a valid code. Confirm they are showing as Active or Pending on the campaign the coupon belongs to. Suspending is reversible, so check the current status rather than assuming.

Codes registered after an order was placed cannot match that earlier order automatically. Register codes before they go out, or ask support about a backfill.

Watch how it is done

Stripe Discount Codes for Affiliates: Track Sales With No Code (1:37)

Plumquote is a demo account made for this tutorial.

Watch on YouTube
Read the transcript

Pick discount codes 0:00

This sale came through a discount code at Stripe checkout, and LinkJolt credited it to the affiliate who owns the code. Nothing was added to the website. Here's the setup.

In LinkJolt, open Integrations and connect Stripe on the Stripe tab. Then, under How do your customers pay, pick Discount codes only.

Affiliates share a code instead of a link. There's nothing to add to your site: LinkJolt matches each code to its affiliate when a customer uses it.

Because Stripe is connected, you don't make the codes in Stripe yourself. LinkJolt creates them in your Stripe, with the discount you pick.

A code for every affiliate 0:37

Open your campaign and edit it. Switch on a coupon code for every affiliate, and set the discount: ten percent off the first payment.

Saving makes a Stripe code for every affiliate already on the campaign, and everyone you approve later gets one too.

Here's Leo's code, named after him and created in Plumquote's Stripe. He shares it with his audience.

The customer uses the code 1:03

A customer enters the code at Stripe checkout. Stripe tells LinkJolt which code was used.

And the sale is credited to Leo: thirteen fifty paid after the discount, and two seventy in commission, waiting for your approval.

Payment Links: allow promotion codes 1:18

Selling through Stripe Payment Links? Edit the link in Stripe and switch on Allow promotion codes, or customers have nowhere to type the code.

That's the setup. Try LinkJolt free for seven days at linkjolt.io.

Start your affiliate program

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