RekomiRekomiBlogPricing
Rekomi Docs
Rekomi Docs
Welcome to Rekomi
Quickstart for brandsPlans and trialsIntegrationsStripe Connect (sales tracking)Organization settingsTeam managementNotifications

Campaigns and commissions

CampaignsCommission modelsPay per click or lead (CPC & CPL)Coupon-code attributionSub-affiliate recruitingTracking and attribution

Affiliates

Recruit affiliatesManage affiliatesAI co-pilotApply to the curated network

Money flow

SalesPayoutsMulti-currencyTax formsReports

Email

Sending domainBroadcasts
For brands
|Brands|

Coupon-code attribution

Use Stripe promotion codes as a tracking mechanism alongside referral links.

Coupon-code attribution lets your affiliates share a redeemable string at checkout instead of a click-tracked URL. Useful when:

  • Your affiliate posts in their podcast, video, or newsletter and viewers will type a code rather than click.
  • The customer hits your site directly (search, brand awareness) but redeems a code at Stripe Checkout.
  • You want a paper trail in Stripe that ties revenue back to a specific affiliate.

Rekomi creates the Stripe coupon for you, mints a unique promotion code per affiliate, and credits the right affiliate whenever a customer redeems one at checkout. Refunds clawback automatically.

How it works

  1. Brand creates a campaign coupon. Pick a discount (% off or fixed $ off), a duration, optional max redemptions and expiry. Rekomi creates the matching Stripe coupon under the hood and stores its id.
  2. Brand mints a per-affiliate code. From an affiliate's detail page, click "Generate" on the Coupons tab. Rekomi creates a Stripe promotion_code that points at the campaign coupon and is tagged with the affiliate's id in metadata.
  3. Affiliate shares the code. The code shows on /a/campaigns/{id} for them to copy. Optionally, brands let affiliates mint their own vanity codes from /a (the Allow affiliate self-service codes toggle on the campaign coupon).
  4. Customer redeems at checkout. Stripe fires invoice.paid or customer.subscription.created with the promotion code embedded. Rekomi sees it, credits the owning affiliate, records a conversion with attribution_method = "coupon".
  5. You see it like any other sale. The conversion lands in your dashboard automatically, tagged in the Source column as "Coupon" with the redeemed code (for example "Coupon · SARAH20"), right alongside link and S2S conversions. No setup needed: coupon conversions are never silent. The same attribution_method (and the code) is in the REST API, the CSV export (attribution_method + coupon_code columns), and the conversion.created webhook if you sync conversions to your own systems.
  6. Refunds clawback. charge.refunded decrements the affiliate's redemption count and marks the conversion refunded.

When coupon beats click attribution

Each campaign coupon has an Overrides click attribution toggle (default on). When on, a coupon redemption credits the coupon's affiliate even if the customer also clicked another affiliate's tracking link. Use this when:

  • You want code-based affiliates (influencers, podcast hosts) to win over generic site traffic.
  • You want a deterministic, observable attribution path with no cookie ambiguity.
  • Your affiliates drive purchase intent through audio/video where clicks are rare.

Turn it off when:

  • Click tracking is your primary channel and codes are secondary.
  • You run multiple-affiliate-touch flows where the first click should win and the coupon is a "thank you for redeeming" mechanic.

Multiple codes per affiliate

You can mint as many codes as you like for one affiliate. They all roll up to the same affiliate's stats; each code has its own redemption counter. Useful for:

  • Campaign-specific codes (SARAH-BLACKFRIDAY vs SARAH-SPRING).
  • A/B testing copy ("Try SARAH20" vs "Try SARAHSPRING").
  • Letting the affiliate brand variants without losing attribution.

Plan tier

Campaign coupons + per-affiliate coupons are available on the Growth tier and above. Trial users (14-day free trial on any tier) can use everything.

What gets created in Stripe

For every campaign coupon Rekomi creates:

  • A Stripe coupon with the discount you picked, optional redeem_by (expiry), and metadata.rekomi_campaign_coupon_id matching the Rekomi row id.

For every per-affiliate coupon Rekomi creates:

  • A Stripe promotion_code attached to the campaign coupon, with the code string you supplied (or one we generated), optional max_redemptions inherited from the parent, and metadata.rekomi_affiliate_coupon_id matching the Rekomi row id.

If you delete a Rekomi row, Rekomi deactivates / deletes the Stripe object on a best-effort basis. The Rekomi row is the source of truth for attribution.

API access

Coupon endpoints are documented in the developer reference. Both /api/campaigns/{programId}/coupons and /api/affiliates/{affiliateId}/coupons are exposed under /api/v1/* for public-API callers with rk_live_* keys.

Affiliate self-service

When the brand enables Allow affiliate self-service codes on a campaign coupon, approved affiliates can mint vanity codes from /a/campaigns/{id} directly. Codes still need to satisfy ^[A-Z0-9_-]{3,32}$ and be unique within the brand. This is useful for:

  • Influencer programs where you want each creator to control their personal brand string.
  • Hands-off flows where you'd rather not gate every mint behind brand-side approval.

Self-mint can be turned off per coupon at any time without affecting codes already minted.

See also

  • Sub-affiliate recruiting: the other affiliate-network feature, a hard-capped 1-tier override on top of normal commission. Works alongside coupon attribution; override fires whether the parent sale was attributed via click or coupon.

Pay per click or lead (CPC & CPL)

When to use cost-per-click and cost-per-lead, how to set each up, the affiliate experience, and how Rekomi keeps them fraud-resistant.

Sub-affiliate recruiting

Turn your affiliates into recruiters with a hard-capped 1-tier override. Not MLM.

On this page

How it worksWhen coupon beats click attributionMultiple codes per affiliatePlan tierWhat gets created in StripeAPI accessAffiliate self-serviceSee also