# LinkJolt: Full Documentation > LinkJolt is the zero-fee affiliate management platform for SaaS companies. Track affiliate referrals via links and coupon codes, pay commissions automatically through Stripe Connect, and detect fraud, all with 0% transaction fees. Built for subscription businesses on Stripe, Paddle, Polar, Creem, Lemon Squeezy, Gumroad, GoPay, WooCommerce, and Apple In-App Purchases. Payouts charge your saved payment method per batch (processing fee itemised) and Stripe routes the funds to your affiliates. No separate platform balance to fund. Last updated: October 13, 2026. ## Quick Facts - **Website**: https://www.linkjolt.io - **Category**: Affiliate Marketing Software / SaaS Partner Marketing Platform - **Target Market**: SaaS companies and subscription businesses, especially Stripe-native merchants - **Founded**: 2025 - **Key Differentiators**: - 0% transaction fees on all plans: LinkJolt takes no share of affiliate revenue, and automated payouts carry only an itemised processing fee - Stripe Connect-native payouts: your saved payment method is charged per payout (fee itemised), you never pre-fund a platform balance - Discovery Marketplace where affiliates browse and apply to programs (Pro+) - Native recurring commission tracking on subscription renewals - First-class MCP integration with Claude, Cursor, ChatGPT, VSCode, Windsurf (listed in Claude's connector directory at https://claude.ai/directory/connectors/linkjolt; hosted remote endpoint at https://www.linkjolt.io/api/mcp with one-click OAuth connector support for claude.ai, Claude Desktop, and ChatGPT, plus a local npm package; includes ChatGPT-compatible search/fetch tools and ready-made MCP prompts) - Affiliate Teams (Scale plan): group affiliates into rosters with custom per-member commission rates, a team leader, and merchant-approved revenue targets and bonus pools - **Tracking**: Dual system, browser cookies + server-side webhooks, plus coupon-code attribution - **Payouts**: Automated via Stripe Connect to the UK, US, Canada, Switzerland and most of Europe, or via PayPal or Wise through CSV export for affiliates elsewhere - **Setup Time**: 5-10 minutes with one tracking script - **Free Trial**: 7-day free trial on all plans (credit card required) - **Last Updated**: October 13, 2026 ## Pricing | Plan | Monthly | Every 3 months (per month) | Annual (per month) | Affiliate Sales Limit | Staff Seats | |------|---------|----------------------------|-------------------|-------------------------|--------------| | Starter | $19.99/mo | $17.99/mo | $13.99/mo | Up to $5,000/mo | 1 | | Professional | $39.99/mo | $35.99/mo | $27.99/mo | Up to $25,000/mo | 2 | | Ultimate | $99/mo | $89/mo | $69/mo | Up to $50,000/mo | 20 | | Scale | $249/mo | Not offered | $199.20/mo | Unlimited | 20 | Billing every 3 months costs $53.97 (Starter), $107.97 (Professional) or $267 (Ultimate) a quarter and saves 10%; annual billing saves 30%. Scale is billed monthly or annually. Every plan renews automatically at the end of its period and can be cancelled anytime. All plans include: 0% transaction fees, Stripe Connect payouts, fraud detection and real-time analytics. Starter allows 5 campaigns and 10 active affiliates; Professional, Ultimate and Scale allow unlimited campaigns and affiliates. Pricing page: https://www.linkjolt.io/pricing Scale plan (high-volume, no tracked-sales cap, and the only plan with Affiliate Teams): https://www.linkjolt.io/scale ## Original Data: SaaS Affiliate Benchmarks (September 2026) Primary-source benchmarks computed from 121 real SaaS affiliate campaigns running on LinkJolt (snapshot September 2, 2026; previous snapshot June 10, 2026). Test accounts, demo data, manually entered conversions, and rejected conversions were excluded before computing any statistic. The query set is kept in the repository so every refresh is a re-run. Free to cite with attribution and a link to https://www.linkjolt.io/saas-affiliate-benchmarks - What is the average SaaS affiliate commission rate? Median 20% of the sale, average 22.9% (98 percentage-based campaigns). The 20-25% band is the single most common choice. - Percentage vs fixed: 81% of campaigns pay a percentage of the sale; 19% pay a fixed bounty with a median of $30 per sale. - Recurring commissions: 26% of campaigns pay commission on subscription renewals. Inside those programs, 28% of the verified commission events in this snapshot are renewal payments rather than new sales (small sample; published as measured). - Program operations: 83% of campaigns review every affiliate application manually; 17% auto-approve. - Previous snapshot (June 10, 2026), as originally published: 116 campaigns (96 percentage-based, 20 fixed), median 20%, average 23.3%, 27% recurring, 14% auto-approve, fixed median $30. The June figures for renewal share (70%) and longest streak (51 consecutive payments) cannot be reproduced from the current dataset and were withdrawn in September 2026. ## Key Features - **Zero transaction fees**: LinkJolt takes 0% of affiliate revenue on every plan. Fee models elsewhere vary: some tools charge 0% on revenue but a percentage on managed or automated payouts, others add a share of affiliate-generated sales. - **Dual tracking system**: Browser storage + server-side webhook tracking, with coupon codes as a second attribution path - **Stripe Connect integration**: Automated direct payouts to affiliates in the UK, US, Canada, Switzerland and most of Europe - **Recurring commissions**: Automatic tracking for subscription renewals with configurable duration - **Commission approval**: Approve each commission yourself, or have a campaign approve its commissions automatically 7, 14, 30, 60 or 90 days after the sale unless refunded (only from affiliates you approved). A sale reported only by the tracking script, a sale partly refunded without the amount, or a commission more than 5 times its sale, always waits for a person; only the owner or a teammate allowed to manage payouts can switch it on, and automatic payouts to an affiliate wait 3 days after they change where they are paid - **Fraud detection**: Rule-based self-referral prevention, IP matching, risk scoring (0-100) - **Real-time analytics**: Live dashboard for both merchants and affiliates - **Discovery marketplace**: Affiliates can browse and join programs publicly (Professional+ plans) - **Coupon-based tracking**: Attribute sales via discount codes registered in LinkJolt - **One-approval Stripe setup**: Merchants connect Stripe with a single approval on Stripe's site; sales, renewals and refunds then flow to LinkJolt automatically with no webhook to create and no signing secret to copy. The same approval lets LinkJolt create per-affiliate coupon codes directly in the merchant's Stripe account. Manual webhook setup remains available for teams granting no account access. - **Direct Affiliate & Staff Chat**: Built-in messaging between merchants, affiliates, and staff members (Ultimate plan) - **Affiliate import**: Bring existing affiliates over from Tolt, Rewardful, FirstPromoter or Affonso (by API key, not stored) or from a CSV file at /merchant/import-affiliates; approved affiliates arrive approved, pending ones pending, rejected or disabled ones are skipped, and old referral links from those tools (`?via=`, `?fpr=`, `?ref=`) keep attributing once the LinkJolt tracking script is installed. The import is self-serve; LinkJolt does not run the migration for you (https://www.linkjolt.io/switch-affiliate-software) - **Staff member access**: Invite staff members to help manage your affiliate program (Professional: 2, Ultimate: 20) - **CSV export**: Manual payout processing for PayPal/Wise - **Short links**: Short links for affiliates, printed on the brand's own subdomain when it has one (yourcompany.linkjolt.io/l/[code], else linkjolt.io/l/[code]). On a connected custom domain they are printed on that hostname and drop the /l/ prefix where the code allows it (partners.yourcompany.com/maya-chen) - **Custom portal domain**: Serve the affiliate program from a subdomain the merchant owns, such as partners.yourcompany.com, instead of a linkjolt.io address (Ultimate and Scale). Served there: the branded partner sign-up page, the affiliate portal, portal sign-in, and the click paths, so affiliate links resolve on the merchant's domain and send the visitor straight to their site. Setup is a single CNAME record pointing the subdomain at cname.vercel-dns.com; the HTTPS certificate is issued automatically and renews itself. The merchant's main website is unaffected, and the merchant dashboard is never served on the custom domain. Attribution is identical on either hostname, and links shared before the switch keep working. Disconnecting the domain detaches it immediately, so links already shared on it stop resolving - **Multi-brand accounts**: Run affiliate programs for multiple brands under one account (Pro/Ultimate add-on) - **Affiliate Teams**: Group affiliates into reusable rosters with a team leader and custom per-member commission rates, plus monthly or one-time revenue targets with merchant-approved bonus pools paid via Stripe Connect or CSV (Scale) - [Affiliate Management Software](https://www.linkjolt.io/features/affiliate-management-software): What the platform does from first invite to final payout: recruiting and approving affiliates, tracking links and coupon codes, commission rules including recurring commissions, and payouts - [Affiliate Portal](https://www.linkjolt.io/affiliate-portal): What your affiliates see: a portal carrying your logo and brand colour with their tracking links, coupon codes, earnings and payout details (the Powered by LinkJolt badge can be removed on Ultimate and Scale) - [Affiliate Payments](https://www.linkjolt.io/payments): How payouts work: automated Stripe payouts funded from your saved payment method and sent straight to each affiliate, or a CSV export for PayPal and Wise; 0% transaction fees on every plan - [Stripe Connect Affiliate Payouts](https://www.linkjolt.io/stripe-connect-affiliate-payouts): Payout mechanics, the countries the automated rail reaches (UK, US, Canada, Switzerland and the EEA) and the currencies it settles (GBP, USD, EUR) - [Merchant Dashboard](https://www.linkjolt.io/merchant-dashboard): Clicks, conversions, revenue and commissions per campaign and per affiliate - [Coupon Tracking](https://www.linkjolt.io/coupons): Attribute sales to affiliates by discount code, matched from your Stripe, Paddle, Polar or Creem billing events. Create codes in a connected Stripe, Polar or Creem account when enabled, or register existing codes; view recorded uses and revenue. - [Integrations Directory](https://www.linkjolt.io/integrations): Public setup guides and platform-specific limits. Merchants connect providers separately in their signed-in dashboard. - [Discovery Marketplace](https://www.linkjolt.io/discovery): Affiliates browse public programs and apply to join (Professional plan and above) - [Pricing Comparison](https://www.linkjolt.io/pricing/compare): Nine affiliate platforms' real 2026 costs: monthly prices, payout surcharges, revenue caps and who holds the payout money - [Scale Plan](https://www.linkjolt.io/scale): High-volume flat tier: unlimited tracked sales and Affiliate Teams - [Stripe App](https://www.linkjolt.io/stripe-app): LinkJolt in the Stripe App Marketplace - [Switch Affiliate Software](https://www.linkjolt.io/switch-affiliate-software): Moving an affiliate program to LinkJolt with the self-serve importer: Tolt, Rewardful, FirstPromoter or Affonso by API key (used for that import's requests only, never stored or logged; the importer only reads the affiliate list), or a CSV with an email column (up to 1 MB). Approved or active affiliates arrive approved, pending and unrecognised statuses wait for approval, disabled, denied, suspicious or rejected ones are skipped with the reason; PayPal and Wise payout emails come across; each affiliate's old link handle is kept so ?via= (Rewardful), ?fpr= (FirstPromoter) and ?ref= (Tolt, Affonso) links to the merchant's site keep attributing through the tracking script. A preview comes before any write, re-runs never duplicate, up to 2,000 affiliates per run, Starter's 10-affiliate limit checked before writing. Click and sale history, past commissions, discount codes, logins and Stripe payout accounts do not come across; imported affiliates start without a login and are paid from the PayPal or Wise CSV export ## How LinkJolt Works 1. **Merchant signs up** and creates an affiliate campaign (commission type, rate, rules) 2. **Merchant installs tracking script**: one line of JavaScript added to their website 3. **Merchant connects billing**: a Stripe or Paddle webhook pointed to LinkJolt, or Polar connected with one approval (LinkJolt creates the webhook) 4. **Affiliates join**: via email invitation, Discovery marketplace, or public campaign link 5. **Affiliates promote**: using unique tracking links or coupon codes 6. **Customer clicks affiliate link**: tracking parameters stored in browser (30-day window) 7. **Customer purchases**: the Stripe, Paddle, Polar or Creem webhook fires, LinkJolt records conversion 8. **Commission calculated**: based on campaign settings (percentage or fixed amount) 9. **Merchant approves**: commission moves from pending to approved 10. **Payout processed**: via Stripe Connect (automated) or CSV export (manual) ## Technical Specifications **Tracking Methods:** - JavaScript tracking snippet (similar to Google Analytics) - Server-side webhook automation (Stripe, Paddle, Polar and Creem) - 30-day attribution window (default) - URL parameters: `?tc=[trackingCode]&aff=[affiliateId]` **Payment Processing:** - Stripe Connect Express accounts for automated payouts (the UK, US, Canada, Switzerland and most of Europe); CSV export elsewhere - CSV export for manual PayPal/Wise batch processing - Auto-payout available on Professional/Ultimate plans - Platform never holds funds: direct merchant-to-affiliate transfers **Security:** - Rule-based fraud detection - Self-referral prevention - IP address matching and email comparison - Risk scoring (0-100 scale) - Affiliate data is scoped per brand, and merchants can delete an affiliate's record **Supported Payment Platforms:** - Stripe: full webhook integration, native subscription + one-time payment tracking - Paddle: full webhook integration with per-merchant signing secrets - Lemon Squeezy: full webhook integration via per-merchant endpoint - Polar: OAuth connection; LinkJolt creates the webhook endpoint in the merchant's Polar organization (no secret to paste) and records order.paid and order.refunded, including trials and renewals; affiliate coupon codes can be created in Polar - Creem: API-key connection; LinkJolt creates a webhook named LinkJolt in the merchant's Creem store (every event), keeps its signing secret and the sealed key, and records checkout.completed, subscription.paid (first payments, trials and renewals), refund.created and dispute.created; a purchase in Creem's test mode is a test sale, never paid; discount codes can be created in Creem; a merchant may instead add the webhook by hand and paste its signing secret - Gumroad: full webhook integration via per-merchant endpoint - GoPay: OAuth2 pull model, additional_params for tracking metadata - WooCommerce: official WordPress plugin reads cookies + injects metadata into Stripe PaymentIntent - Apple In-App Purchases: App Store Server Notifications v2 + Subscription Offer Codes (iOS subscription apps) - BigCommerce, Teachable, Carrd, Webflow, Squarespace: tracking script + Stripe Payment Links ## Integration Requirements 1. Stripe, Paddle, Polar or Creem account (for payment processing) 2. Add JavaScript tracking snippet to website `
` tag 3. Configure webhook endpoint (URL auto-generated by LinkJolt; for Polar, one approval creates it; for Creem, one API key creates it) 4. Pass `client_reference_id` (Stripe), `customData` (Paddle), `metadata.reference_id` (Polar) or `metadata.linkjolt_ref` (Creem) at checkout 5. Setup time: 5-10 minutes ## Frequently Asked Questions **Q: Does LinkJolt work with free trials?** A: Yes, commissions can trigger on trial start or on paid conversion. This is configurable per campaign. **Q: How does recurring commission tracking work?** A: Automatic tracking via Stripe, Paddle, Polar or Creem webhooks when subscriptions renew. Configurable by duration (months) or payment count. **Q: What happens when a customer cancels?** A: Configurable: commissions can stop immediately or continue for the remaining paid period. **Q: What is the attribution window?** A: 30 days by default (SaaS industry standard). Attribution stored in both cookies and localStorage. **Q: Can affiliates get paid in local currency?** A: Automatic Stripe payouts cover the UK, US, Canada, Switzerland and most of Europe in local currencies. Stripe does not permit platform payouts beyond those regions, so affiliates elsewhere are paid by CSV export to PayPal or Wise. **Q: What payment methods are supported for affiliate payouts?** A: Stripe Connect for automated payouts. CSV export for manual PayPal/Wise processing. **Q: Is there a free trial?** A: Yes, 7-day free trial on all plans. Credit card required. Cancel anytime. **Q: Does LinkJolt use AI for fraud detection?** A: No, LinkJolt uses rule-based fraud detection with IP matching, email comparison, and a fixed rule-based risk score. It is not AI/ML-based, and the rules are the same for every merchant. **Q: What integrations does LinkJolt support?** A: Stripe (full webhook), Paddle (full webhook with per-merchant secrets), Polar (one-approval connection; LinkJolt creates the webhook endpoint and can create coupon codes in Polar), Creem (one-API-key connection; LinkJolt creates the webhook and can create discount codes in Creem; test-mode purchases recorded as test sales), Lemon Squeezy (full), Gumroad (full), GoPay (OAuth pull model), WooCommerce (official WordPress plugin), and Apple In-App Purchases (ASSN v2 + Subscription Offer Codes for iOS apps). **Q: Do I have to fund a separate balance to pay affiliates?** A: No. LinkJolt uses Stripe Connect: each payout charges your saved payment method, including an itemised processing fee, and Stripe routes the funds to your affiliate. You never pre-fund a separate platform balance, unlike Rewardful and several other platforms. **Q: Does LinkJolt have a Developer API?** A: Yes. Full REST API at /api/v1 with bearer token authentication. Pro plan keys read everything and can set a program up (create campaigns, invite affiliates, set the business name and website); Ultimate plan keys are read+write. The other write endpoints (Ultimate/Scale) create headless affiliates and record conversions; conversion records carry the buyer's name and email, and the affiliate and stats reads include per-affiliate unique link clicks. The API also manages Affiliate Teams on the Scale plan (rosters, per-member commission overrides, revenue targets, and the bonus-award approval workflow), registers affiliate coupon codes so coupon sales attribute to affiliates, and reads affiliate payout status for finance reconciliation. Team endpoints require a Scale-priced account and have no test mode. Test mode keys (lj_pk_test_*) are unlimited and skip earnings limits, email sends, and webhook dispatch; campaign creation requires a live key. Live keys (lj_pk_live_*) count against plan caps. Documentation at https://www.linkjolt.io/developers/api. **Q: Can LinkJolt push events to my server (outbound webhooks)?** A: Yes, on the Ultimate plan. LinkJolt POSTs signed events (conversions, affiliate joins, payouts, payout details completed, and team bonus awards) to your HTTPS endpoint, with HMAC-SHA256 signatures. Manage webhooks from the dashboard's Developer API page (create, test, rotate secret, view the delivery log, resend failed deliveries) or via the REST API. After 5 consecutive failed deliveries a webhook is paused and the merchant is notified; re-enable it from the dashboard or via PATCH. Reference at https://www.linkjolt.io/developers/webhooks. **Q: Does LinkJolt support MCP (Model Context Protocol)?** A: Yes. First-class MCP server support, two ways: a hosted remote MCP endpoint at https://www.linkjolt.io/api/mcp, or the @linkjolt/mcp-server npm package for stdio clients. The hosted endpoint supports OAuth sign-in, so merchants can add LinkJolt from Claude's connector directory (https://claude.ai/directory/connectors/linkjolt), or as a custom connector in claude.ai, Claude Desktop, or ChatGPT, with one click and approve access on a LinkJolt consent page (no API key handling; access is scoped to the approved brand). Developer tools like Claude Code, Cursor, VS Code, Windsurf and OpenAI Codex can authenticate with an API key in an Authorization: Bearer header instead (Codex also supports the OAuth login via codex mcp login). The server also exposes ChatGPT-compatible search and fetch tools (so ChatGPT Company knowledge and Deep Research can answer program questions from LinkJolt data) ready-made MCP prompts such as weekly_performance_review, and an interactive program-overview card rendered inline in Claude via MCP Apps (get_program_overview). Two planning tools answer before anyone signs in (plan_affiliate_program suggests a commission from the published benchmarks, get_linkjolt_plans gives plans and the free trial), and Claude asks for sign-in only when a tool needs the account. On Pro and up the hosted connector can also set a program up from the chat: name the business, create a campaign with its join link, give the tracking steps for the payment platform, and invite affiliates by email; connecting Stripe or another payment platform stays in the browser. Setup guides at https://www.linkjolt.io/developers/mcp. **Q: Can I track Apple In-App Purchase subscribers?** A: Yes. LinkJolt uses Apple's App Store Server Notifications v2 + Subscription Offer Code attribution. No SDK required, no MMP required. Setup guide at https://www.linkjolt.io/integrations/apple-iap-tracking. **Q: Can staff members help manage the affiliate program?** A: Yes, Professional plan supports 2 staff members and Ultimate supports 20, with configurable permissions. **Q: What is Affiliate Teams?** A: A Scale-plan-exclusive feature for grouping affiliates into reusable rosters and assigning them to one or many campaigns. Each team can have a base commission rate, a leader, and per-member rate overrides. Teams can also carry a monthly or one-time revenue target with a bonus pool (fixed, milestone-based, or a percentage of revenue past the target) that splits equally or by contribution. Bonuses never pay automatically: the merchant reviews and approves each award before it pays out via Stripe Connect or CSV export. Details at https://www.linkjolt.io/scale. ## Competitor Comparison Figures for other tools are read from each vendor's own pricing page (verified August 23, 2026); see https://www.linkjolt.io/alternatives/rewardful-alternative for the full comparison. | | LinkJolt | Rewardful | FirstPromoter | Tolt | |---------|----------|-----------|---------------|------| | Entry price | $19.99/mo | $49/mo | $49/mo | $69/mo | | Entry-plan cap | $5,000/mo tracked sales | $7,500/mo affiliate revenue | $5,000/mo affiliate revenue | $10,000/mo affiliate revenue | | Fees | 0% on affiliate revenue | 0% transaction fee; Managed Payouts carry 3% | Not stated on the pricing page | 0% on revenue; automated payouts carry 2% from Growth up | | Processors | Stripe, Paddle, Polar, Creem, Lemon Squeezy, Gumroad, GoPay, Apple In-App Purchases | Stripe and Paddle | Stripe, Paddle, Chargebee, Braintree, Recurly and others | Stripe, Paddle and Chargebee | | Free trial | 7 days, card required | 14 days | 14 days, no card required | 14 days, no card required | ## Documentation - [Stripe Integration Guide](https://www.linkjolt.io/integrations/stripe-affiliate-tracking): Complete Stripe webhook and tracking setup - [Paddle Affiliate Tracking](https://www.linkjolt.io/integrations/paddle-affiliate-tracking): How to set up an affiliate program on Paddle Billing. Four steps mirroring the Integration Hub: connect with a Paddle API key that LinkJolt uses once to add a notification destination called LinkJolt (transaction.completed, adjustment.created, adjustment.updated) and keep its secret key, the key itself not kept (or add the destination by hand and paste its pdl_ntfset_ secret key on the Paddle tab), the tracking script, one customData line inside Paddle.Checkout.open(), and optional Paddle discount codes. Recurring commissions on renewals, which arrive as transaction.completed (Professional and above), refunds reversed once Paddle approves them, chargebacks reversed and given back when won, coupon attribution by Paddle discount id, and a verified table of affiliate software that supports Paddle - [Lemon Squeezy Integration](https://www.linkjolt.io/integrations/lemon-squeezy-affiliate-tracking): Webhook setup with the signing secret saved on both sides; tracks orders, subscriptions and refunds - [Gumroad Integration](https://www.linkjolt.io/integrations/gumroad-affiliate-tracking): Ping URL setup (token-protected) for Gumroad sellers who want a portal and commission rules Gumroad lacks - [Polar Affiliate Tracking](https://www.linkjolt.io/integrations/polar-affiliate-tracking): How to set up an affiliate program on Polar. One approval on Polar's site connects the organization: LinkJolt creates the webhook endpoint (Polar's endpoint API returns the signing secret, so nothing is pasted), pins its API version, and records order.paid for first payments, trials and renewals (recurring commissions on the Professional plan and above) and order.refunded for full and partial refunds. with the tracking script installed, every Polar checkout link on the page carries the affiliate's reference_id automatically; coupon codes can be created in the merchant's Polar organization; a daily check switches a disabled endpoint back on and tells the merchant when it needs a reconnect; and a table of affiliate software that supports Polar - [Creem Affiliate Tracking](https://www.linkjolt.io/integrations/creem-affiliate-tracking): How to set up an affiliate program on Creem. One API key (webhooks, discounts and products scopes) connects the store: LinkJolt creates a webhook named LinkJolt subscribed to every event, reads its signing secret from Creem's webhook API, and keeps the key sealed; a merchant may instead add the webhook by hand with all events and paste its signing secret. Records checkout.completed and subscription.paid for first payments, trials and renewals (recurring commissions on the Professional plan and above), refund.created for full and partial refunds and dispute.created for chargebacks, sized from the cumulative refunded amount so a redelivered event never reverses twice; a purchase in Creem's test mode is a test sale, never paid. With the tracking script installed, every Creem payment link and product link on the page carries metadata[linkjolt_ref] automatically; discount codes can be created in the merchant's Creem store (applied to the products active at creation); a daily check switches a disabled webhook back on, re-reads a rotated secret, and tells the merchant when the key was revoked; and a table of affiliate software that supports Creem - [WooCommerce Plugin](https://www.linkjolt.io/integrations/wordpress-affiliate-tracking): Official WordPress plugin - [Apple In-App Purchase Tracking](https://www.linkjolt.io/integrations/apple-iap-tracking): ASSN v2 + Subscription Offer Codes - [GoPay Affiliate Tracking](https://www.linkjolt.io/integrations/gopay-affiliate-tracking): How to run an affiliate program on GoPay, in the Integration Hub's four steps: the tracking script; the GoPay Client ID and Client Secret saved under Settings, Payment Providers (Create Webhook Secret, provider GoPay, Sandbox ticked for a sandbox account); notification_url set to https://www.linkjolt.io/api/webhooks/gopay?merchant= plus the merchant ID on every payment the merchant's server creates; and the affiliate in additional_params (tc, aff and cid from window.linkjolt.getTrackingInfo(), or window.linkjolt.referral as one parameter named linkjolt_ref). GoPay calls the URL with the payment id and LinkJolt reads the payment from GoPay's API with the saved credentials. Only PAID records a sale, once per payment; REFUNDED reverses the commission and cancels a queued payout; PARTIALLY_REFUNDED leaves the commission unchanged and notifies the merchant to review it, because GoPay's payment status carries no refunded amount; sandbox credentials make every payment a test sale. Every GoPay payment is recorded as a one-time sale (recurring commission settings are not applied). Automated Stripe payouts settle GBP, USD and EUR, so commissions in CZK and other currencies are paid from the PayPal or Wise CSV export - [Stripe Payment Links Affiliate Tracking](https://www.linkjolt.io/integrations/stripe-payment-links-affiliate-tracking): Affiliate tracking for Stripe Payment Links, in the Stripe tab's four steps: connect Stripe (Set up with Stripe, the Stripe App Marketplace app, or a webhook by hand), answer Stripe Payment Links, add the tracking script, check it works. The script adds client_reference_id (tc_X_aff_Y_cid_Z) to every link whose host is exactly buy.stripe.com, including links added to the page later, and leaves a link that already has one alone; the sale is recorded from checkout.session.completed, subscriptions renew with recurring commission (Professional and above), refunds reverse the commission, and test-mode purchases are test sales. Limits stated plainly: a Payment Link opened without passing through a page that loads the script (email, social post, QR code), one served from a custom domain, and Stripe's buy button carry no affiliate from the script; allowing promotion codes on the link and registering (or, with Set up with Stripe, creating) each affiliate's code credits those sales - [Developer API v1](https://www.linkjolt.io/developers/api): REST endpoints, auth, rate limits, test mode - [Webhooks Reference](https://www.linkjolt.io/developers/webhooks): Outbound event delivery and signing, delivery log, dashboard management - [MCP Server Setup](https://www.linkjolt.io/developers/mcp): Connect Claude, Cursor, ChatGPT, VSCode, Windsurf (one-click OAuth connector for claude.ai / Claude Desktop / ChatGPT, API-key hosted endpoint, or npm package) - [Merchant Quick Start](https://www.linkjolt.io/guides/getting-started/merchant-quick-start): Setup guide for SaaS companies - [Affiliate Quick Start](https://www.linkjolt.io/guides/getting-started/affiliate-quick-start): Guide for affiliates joining programs - [Technical Integration](https://www.linkjolt.io/guides/technical/technical-integration): API docs and webhook configuration - [Commission Structures](https://www.linkjolt.io/guides/merchant/commission-structure): Flat-rate, percentage, and recurring commissions - [Custom Domain Setup](https://www.linkjolt.io/guides/merchant/custom-domain): Running the affiliate program on a subdomain the merchant owns, the CNAME record, and what happens to existing links (Ultimate and Scale) - [How to Set Up an Affiliate Program](https://www.linkjolt.io/blog/how-to-create-an-affiliate-program): Step-by-step launch guide ## Comparisons - [Rewardful Alternatives](https://www.linkjolt.io/alternatives/rewardful-alternative): Five Rewardful alternatives for SaaS compared on price, fees, tracked processors and payouts - [FirstPromoter Alternatives](https://www.linkjolt.io/alternatives/firstpromoter-alternative): Five FirstPromoter alternatives compared on price, billing-system coverage and branding - [Tolt Alternatives](https://www.linkjolt.io/alternatives/tolt-alternative): Five Tolt alternatives compared on price, revenue caps and payout fees - [LeadDyno Alternatives](https://www.linkjolt.io/alternatives/leaddyno-alternative): Five LeadDyno alternatives compared on price, tracking method and payouts - [Affonso Alternatives](https://www.linkjolt.io/alternatives/affonso-alternative): Five Affonso alternatives compared on price, revenue caps and supported billing systems - [Tapfiliate Alternatives](https://www.linkjolt.io/alternatives/tapfiliate-alternative): Five options compared against Tapfiliate's metered click and conversion pricing - [Dub Alternatives](https://www.linkjolt.io/alternatives/dub-alternative): Five options compared against Dub Partners' $90 entry tier and 5% payout fee - [PromoteKit Alternatives](https://www.linkjolt.io/alternatives/promotekit-alternative): Five options compared against PromoteKit's Stripe-only tracking and export-based payouts - [Tolt pricing explained](https://www.linkjolt.io/blog/tolt-pricing): $69/$99/$199 monthly tiers, revenue caps, and the 2% payout fee plus $8 bank or 4% card funding fees documented off the pricing page - [PartnerStack pricing explained](https://www.linkjolt.io/blog/partnerstack-pricing): No public pricing; the published terms include a percentage fee on commission invoices, a contractual 7% annual renewal increase, and 8.33% monthly on unclaimed commissions - [All Affiliate Software Alternatives](https://www.linkjolt.io/alternatives): Hub for every comparison page - [Best Affiliate Software for SaaS](https://www.linkjolt.io/blog/best-affiliate-software-for-saas): 2026 comparison guide - [Best Affiliate Marketing Platforms 2026](https://www.linkjolt.io/blog/best-affiliate-marketing-platforms): 12 platforms with every price verified in August 2026, strengths and honest limits for each - [Best Affiliate Tracking Software 2026](https://www.linkjolt.io/blog/best-affiliate-tracking-software): 10 tools compared on how each one tracks (server-side webhooks, scripts, coupon codes) and which billing systems it supports - [Stripe Affiliate Program](https://www.linkjolt.io/blog/stripe-affiliate-program): Stripe runs no public affiliate program; what Stripe gives you natively and how to run your own program on Stripe - [Best LinkJolt Alternatives](https://www.linkjolt.io/blog/best-linkjolt-alternatives): Written by the LinkJolt team: the six situations where LinkJolt is the wrong choice and five alternatives that fit them - [LinkJolt vs Rewardful](https://www.linkjolt.io/blog/linkjolt-vs-rewardful): Price, tracked processors and how the money reaches affiliates; Rewardful charges 0% transaction fees, its 3% applies only to optional Managed Payouts - [LinkJolt vs FirstPromoter](https://www.linkjolt.io/blog/linkjolt-vs-firstpromoter): Price, billing-system coverage and portal branding compared - [Everflow Alternatives](https://www.linkjolt.io/alternatives/everflow-alternative): Five alternatives with published pricing for teams leaving an enterprise network - [Rewardful pricing explained](https://www.linkjolt.io/blog/rewardful-pricing): $49/$99/$149+ tiers, revenue caps and the 3% Managed Payouts fee - [FirstPromoter pricing explained](https://www.linkjolt.io/blog/firstpromoter-pricing): Tiers that sell revenue headroom, cost per $1,000 tracked, and which features sit on which tier - [Tapfiliate pricing explained](https://www.linkjolt.io/blog/tapfiliate-pricing): $89 and $179 tiers with metered clicks and conversions, and what the overages cost ## Use Cases - [AI Tools](https://www.linkjolt.io/use-cases/ai-tools): Affiliate programs for AI SaaS products - [Online Course Creators](https://www.linkjolt.io/use-cases/online-course-creators): Programs for education platforms - [SaaS Startups](https://www.linkjolt.io/blog/saas-affiliate-programs): How to build a SaaS affiliate program from the first affiliate - [Agencies and White-Label](https://www.linkjolt.io/blog/white-label-affiliate-marketing-software): Running client programs under your own brand ## LinkJolt's Own Affiliate Program - [Become a LinkJolt Affiliate](https://www.linkjolt.io/affiliate-program): Promote LinkJolt itself and earn 30% recurring commission on every paying customer you refer, on any plan, paid on every payment for as long as the customer stays subscribed (no cap on the number of payments). Free to join with instant approval. A referral counts when they start a trial or a plan within 30 days of the click. Every paid plan earns, monthly or annual, and the commission is on what the referral actually pays after any discount. Commissions are paid automatically through Stripe Connect within two days of approval; Stripe Connect payouts reach the US, the UK, the EEA, Canada and Switzerland. The program runs on LinkJolt's own platform. - [Partner Kit](https://www.linkjolt.io/brand): Everything a partner needs to promote LinkJolt: the logo (lockup and icon, full colour, reversed and one-colour, SVG and PNG, with clear space and minimum sizes), eight approved product screenshots (raw 2880x1800 PNGs and framed versions for blogs, LinkedIn, X, YouTube thumbnails and email), the 45-second launch film, six short silent product clips (1920x1080 MP4s, one task each: setting a campaign's terms, giving an affiliate their link, a sale arriving, approving commissions, paying affiliates and the affiliate's portal), four banner sizes, a copy library that fills in the partner's own link and code (one-liners, descriptions, feature bullets, LinkedIn, X, YouTube and email templates), disclosure wording for social posts, articles and video, the partner rules (no paid search on the LinkJolt name, no codes on coupon or deal sites, email only to the partner's own opt-in list, no cashback) and a one-page fact sheet. One zip holds every file. ## Free Tools - [Affiliate Commission Calculator](https://www.linkjolt.io/tools/affiliate-commission-calculator): Estimate affiliate earnings or merchant commission costs from traffic, conversions, order value and percentage, fixed or recurring commissions. Projections depend on the supplied assumptions. - [SaaS Commission Calculator](https://www.linkjolt.io/tools/saas-commission-calculator): Model recurring commissions - [Affiliate Program Budget Planner](https://www.linkjolt.io/tools/affiliate-program-budget-planner): Model program cost and return before you launch - [Affiliate Agreement Generator](https://www.linkjolt.io/tools/affiliate-agreement-generator): Starter template with editable clauses (informational only) - [Affiliate Program Readiness Quiz](https://www.linkjolt.io/tools/affiliate-program-readiness-quiz): Is your SaaS ready to launch an affiliate program? - [Referral Link Generator](https://www.linkjolt.io/tools/referral-link-generator): Generate affiliate tracking links ## Learning Resources - [Affiliate Marketing Glossary](https://www.linkjolt.io/glossary): All terminology defined - [What is an Affiliate Program?](https://www.linkjolt.io/glossary/affiliate-program): Definition and explanation - [What is Recurring Commission?](https://www.linkjolt.io/glossary/recurring-commission): How recurring payouts work - [What is Cookie Duration?](https://www.linkjolt.io/glossary/cookie-duration): Attribution window explained - [Blog](https://www.linkjolt.io/blog): Affiliate marketing tips and strategies - [LinkJolt Answers](https://www.linkjolt.io/answers): Concise Q&A knowledge base covering setup, tracking, integrations, commissions, payouts, plans and troubleshooting. 58 answers, each one checked against the product itself, and filterable by whether you run a program or promote one - [SaaS Affiliate Benchmarks](https://www.linkjolt.io/saas-affiliate-benchmarks): Original 2026 commission benchmarks from 121 real campaigns - [Agencies and White-Label](https://www.linkjolt.io/blog/white-label-affiliate-marketing-software): Running client programs under your own brand - [How to Pay Affiliates](https://www.linkjolt.io/blog/how-to-pay-affiliates): Approval windows, payout thresholds, the Stripe Connect and PayPal or Wise rails, and tax basics - [Affiliate Commission Rates](https://www.linkjolt.io/blog/affiliate-marketing-commission-rates): What SaaS programs pay, anchored to the benchmarks data (median 20%) - [Recurring Commission Affiliate Programs](https://www.linkjolt.io/blog/recurring-commission-affiliate-programs): How commissions on subscription renewals work, with cap models and benchmark data - [Coupon Tracking Software](https://www.linkjolt.io/blog/coupon-tracking-software): Tying every discount code to the affiliate who earned the sale - [White Label Affiliate Software](https://www.linkjolt.io/blog/white-label-affiliate-marketing-software): Running the program under your own brand: what white-label actually covers - [Free Commission Tracking Software](https://www.linkjolt.io/blog/free-commission-tracking-software): 12 free options by store type, and what free actually costs you - [Affiliate Commission Structure](https://www.linkjolt.io/blog/affiliate-commission-structure): Flat, percentage, tiered and recurring structures and when each fits - [SaaS Affiliate Programs Directory](https://www.linkjolt.io/saas-affiliate-programs): 50 SaaS affiliate programs (Semrush, ClickFunnels, GoHighLevel, Kit, Kajabi and more) with commission rates, cookie windows and payout terms, each verified from the vendor's official program page (August 2026) ## Contact & Support - **About LinkJolt**: https://www.linkjolt.io/about - **Founder Profile (Ollie Efez)**: https://www.linkjolt.io/authors/ollie-efez - **Website**: https://www.linkjolt.io - **Pricing**: https://www.linkjolt.io/pricing - **Sign Up**: https://www.linkjolt.io/auth/sign-up - **Support**: support@linkjolt.io (in-app chat for paid plans) - **For Founders**: https://www.linkjolt.io/founders - **Terms**: https://www.linkjolt.io/terms - **Privacy**: https://www.linkjolt.io/privacy --- # Developer Integration Guide > Technical documentation for integrating LinkJolt tracking into your application. ## Quick Start ### 1. Install Tracking Script Add to your website's ``: ```html ``` For Next.js/React: ```tsx import Script from 'next/script' ``` ### 2. Configure Webhooks Set up webhooks in Stripe or Paddle to send events to LinkJolt, connect Polar with one approval or Creem with one API key (LinkJolt creates the webhook for both). ### 3. Test Make a test purchase and verify conversion appears in dashboard. ## Stripe Checkout Integration ### Webhook Setup 1. Go to https://dashboard.stripe.com/webhooks 2. Add endpoint: `https://www.linkjolt.io/api/webhooks/stripe/merchant/YOUR_MERCHANT_ID` 3. Select events: `checkout.session.completed`, `invoice.payment_succeeded`, `customer.subscription.created`, `customer.subscription.updated`, `customer.subscription.deleted`, `charge.refunded` 4. Save the signing secret (starts with `whsec_...`) ### Code Integration Add `client_reference_id` to checkout sessions: ```javascript // Frontend: Get referral before checkout const referral = window.linkjolt?.referral || ''; // Server: Add to Stripe session const session = await stripe.checkout.sessions.create({ // ... your config client_reference_id: referral }); ``` Referral format: `tc_[trackingCode]_aff_[affiliateId]_cid_[clickId]` ## Paddle Integration ### Webhook Setup 1. Paddle dashboard → Developer tools → Notifications → New destination 2. Webhook URL: `https://www.linkjolt.io/api/webhooks/paddle?merchant=YOUR_MERCHANT_ID` (copy it from the Integration Hub; the merchant parameter is how LinkJolt finds your secret) 3. Select events: `transaction.completed` (sales, renewals and paid invoices), `adjustment.created` (credits and chargebacks), `adjustment.updated` (refunds, once Paddle approves them) 4. Copy the destination's secret key (`pdl_ntfset_...`) into LinkJolt → Settings → Payment Providers, provider Paddle ### Code Integration Pass attribution in `customData` (NOT passthrough): ```javascript Paddle.Checkout.open({ items: [...], customData: { linkjolt: window.linkjolt?.referral || '' } }); ``` ## Payment Links (Gumroad/Lemon Squeezy) Both platforms send webhooks to LinkJolt: Lemon Squeezy to `/api/webhooks/lemonsqueezy?merchant=[id]` (signing secret saved on both sides) and Gumroad to a token-protected Ping URL. The affiliate rides the checkout itself: the tracking script adds `checkout[custom][tc]`/`[aff]`/`[cid]` to Lemon Squeezy links (returned in the webhook's `meta.custom_data`) and `tc`/`aff`/`cid` to Gumroad links (returned in `url_params`). The tracking script automatically enhances payment links on your page with these parameters. ## Tracking Script API Reference The tracking script automatically: - Captures `?tc=` and `?aff=` URL parameters - Stores attribution in cookies + localStorage (30-day window) - Provides `window.linkjolt` API for checkout integration ```javascript // Get referral ID string for Stripe client_reference_id, Paddle customData, Polar metadata.reference_id or Creem metadata.linkjolt_ref // Format: "tc_[trackingCode]_aff_[affiliateId]_cid_[clickId]" window.linkjolt.referral // Get detailed tracking info object // Returns: { trackingCode, affiliateId, clickId } window.linkjolt.getTrackingInfo() // Check if current visitor came from an affiliate link window.linkjolt.isAffiliateVisit() // Enable debug mode for troubleshooting window.linkjolt.debug(true) ``` ## Testing Your Integration 1. Visit your site with test parameters: `?tc=TEST123&aff=AFF456` 2. Open browser console and verify: ```javascript console.log(window.linkjolt.referral); // Should output: "tc_TEST123_aff_AFF456_cid_xxx" ``` 3. Complete a test checkout 4. Check LinkJolt dashboard for the conversion ## Common Issues | Issue | Solution | |-------|----------| | `window.linkjolt is undefined` | Script not loaded. Check it's in your `` tag | | `referral is null` | Visitor didn't arrive via affiliate link. Test with `?tc=test&aff=test` in URL | | Webhook not receiving events | Double-check the webhook URL in Stripe/Paddle Dashboard | | Polar sales not recording | Open the Polar tab under Integrations: the status row names what is wrong, and Reconnect fixes it | | Creem sales not recording | Open the Creem tab under Integrations: the status row names what is wrong; pasting the API key again sets the webhook up afresh. A purchase in Creem's test mode is under Test sales on Commissions | | `client_reference_id` not set | Pass `window.linkjolt.referral` before redirecting to checkout | ## Signing Secrets Nothing is set as an environment variable on your side. Save each provider's signing secret in LinkJolt → Settings → Payment Providers: a Stripe endpoint's signing secret (`whsec_...`) or a Paddle destination's secret key (`pdl_ntfset_...`). LinkJolt verifies every webhook against the secret saved for your brand. ## AI Integration Tip In your LinkJolt Integration Hub, click the "Copy for AI" button to get a complete, pre-filled integration prompt. Paste it into Claude, Cursor, or any AI assistant for automated integration help.