Affiliate Program App Starter · Industry version
An affiliate program that understands subscriptions — recurring commissions, churn clawbacks, MRR reporting — in code you own.
SaaS referrals don't convert once; they convert every month the customer stays. Generic affiliate tools pay a one-time bounty and go blind. This starter models the subscription itself, so partners earn on retained revenue and your program's cost tracks the revenue it actually creates.
01 · The problem
The unit of value in SaaS is the subscription, not the sale. A one-time-bounty model overpays for customers who churn in month two and underpays the partner whose referrals stay for years — exactly backwards from the incentive you want. Recurring commission needs the subscription lifecycle in the data model, and generic tools don't have it.
Attribution windows built for ecommerce break on SaaS funnels. A referred developer signs up free, invites a team, and converts to paid forty days later under a different email. If your program can only match a purchase to a click within a week, your best partners are subsidizing conversions you never credit them for.
And SaaS programs live or die on trust with technical partners. Developers who promote tools read terms carefully and notice when dashboards don't reconcile. A program whose commission math is inspectable code — and whose numbers come from your billing system, not a tracking pixel — is an easier pitch to exactly the partners you want.
02 · Data model
Everything in the base Affiliate Program starter —
partnersreferral_linksreferralsconversionscommissionspayouts— plus the entities this industry actually runs on:
| table | what it holds |
|---|---|
subscriptions | The referred customer's plan, MRR, and status — the object recurring commission is computed against, month after month. |
commission_plans | Named term sheets — percentage of first year, flat bounty, lifetime revenue share — assignable per partner so bespoke deals stay structured. |
clawbacks | Negative ledger entries created when a referred subscription refunds or churns inside the guarantee window, netted from the next payout. |
03 · Screens
Each billing cycle of a referred subscription generates a commission entry under the partner's plan — 20% for twelve months, lifetime share, whatever the term sheet says. When the customer churns, the entries stop, and the program's cost stays honest.
Referrals track from first touch through free trial to paid conversion, surviving the email switch and the multi-week evaluation. The approval queue shows the full journey, so you can tell an organic team invite from a partner-driven conversion.
The dashboard reports referred MRR, retained MRR by partner, and effective commission rate against revenue — the numbers your finance team already speaks. Partner ranking by retained revenue quietly identifies who sends customers that stay.
04 · In practice
A partner signs up in the portal, accepts a commission plan, and gets links for their newsletter and video descriptions. Their first referred trial appears the same day; the portal shows it moving toward paid conversion without an email to you.
Billing renewals post commission entries all month. At close, refunds inside the guarantee window post clawbacks, the net rolls into payout batches, and the export goes to accounts payable — a repeatable ritual instead of a spreadsheet reconciliation.
A partner outgrows the standard plan. Create a new commission plan with their negotiated terms, assign it from next month, and both plans' histories stay intact in the ledger — no retroactive rewriting, no side spreadsheet.
Yes — commission plans define the duration: first payment only, first twelve months, or lifetime revenue share. Each billing cycle posts a ledger entry while the term is active, and entries stop automatically when the subscription churns.
A refund or early churn inside your guarantee window posts a negative ledger entry against the partner, netted from their next payout. The rule — window length, full or partial clawback — is code you own and can tune per commission plan.
That's the recommended setup: wire subscription events from your billing provider into the conversions table so commission is computed from actual revenue. The generated app is a normal codebase, so the integration is standard engineering against your own schema.
Yes — commission plans keep bespoke terms structured, so a reseller on lifetime share and a blogger on a first-year percentage run through the same ledger and payout flow. Different economics, one auditable system.
Dual7 App Starters
An affiliate program that understands subscriptions — recurring commissions, churn clawbacks, MRR reporting — in code you own. Describe your version to start — the output is a project you own.