Mehmet, an affiliate based in Ankara's Çankaya district, never noticed when a Pro plan customer he referred 8 months earlier filed a refund 6 months later. That's because thMenu's 90-day hold logic absorbed the risk on the platform side. This article unpacks the invisible safety net.
How the 90-Day Hold Period Works
Every commission event arriving from Stripe webhooks is first parked in "pending" status for 90 days. The standard refund window (30-60 days for most subscriptions) fully closes within this period; the affiliate balance only flips to "available" when "release_at <= now()" passes.
The mechanism runs in the aff-hold-release cron job daily at 05:00 UTC. The $5.80 commission visible on Mehmet's dashboard isn't waiting to be withdrawn early — it's waiting for refund exposure to clear so the system can auto-activate it.
Yearly Plans: 12-Month Drip Release
When a customer purchases the annual Pro plan ($290), the affiliate earns $58 in commission — but not all at once. It is sliced across 12 months, releasing ~$4.83 per month. If the customer refunds at month 5, only the remaining 7-month slice (~$33.81) is clawed back; the first 5 months are already settled in the affiliate's account.
This structure encourages aggressive yearly-plan selling while protecting affiliates from the 30-day refund cliff. Our recent platform data shows annual-plan refund rate sitting at 2.1% — drip mechanics align beautifully with this volatility profile.
Mehmet's 6-Month Refund Case
Mehmet referred a Pro plan customer ($29/month) in February 2028. The customer paid monthly; Mehmet earned $5.80 each month consistently. In August the customer closed their restaurant and requested a refund; Stripe issued a partial refund covering only the last month. Because thMenu uses monthly-basis clawback, only $5.80 was reversed from Mehmet's $34.80 lifetime earnings — six months of net income stayed intact.
Had thMenu applied lifetime clawback (as some affiliate networks do), Mehmet would have lost everything. The 90-day hold + monthly-basis clawback combination shields affiliates from aggressive reversal policies.
FAQ
Can I withdraw before the 90-day hold ends? No. Pending balance is locked. Once available balance ≥ $50 you may submit a payout request.
What happens if a yearly refund hits at month 6? Only the unreleased remaining 6-month drip slice is clawed back. Already-released slices stay in your account.
Where do I see hold durations on the dashboard? Affiliate dashboard → Earnings → Pending tab shows the "release_at" date for each commission line.
Found this helpful? Share it.
Related articles
Why Digital Menus Increase Restaurant Revenue by Up to 30%
Studies show restaurants using digital QR menus see measurable increases in aver…
When a Customer Downgrades, What Happens to Old Features? — The Silent Feature-Drift Problem in SaaS
Most SaaS apps run a single line of code when a customer downgrades — but old fe…
JWT alg-confusion attack — why Supabase's HS256 → RS256/JWKS migration breaks legacy verifiers
Verifiers that never decode the JWT header are wide open to `alg=none` and alg-c…