You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Stripe Checkout实现订阅业务的双向推荐返利计划

Stripe Checkout 订阅制双向邀请返利功能实现方案

前置配置

  • 首先在Stripe后台开启Promotion Codes功能,将该功能关联到你当前在售的包月/包年订阅价格项上
  • 你需要在自有后端维护用户与专属邀请码的映射关系:每个用户生成唯一的专属优惠码,和该用户的Stripe客户ID、自有系统用户ID绑定存储

核心流程实现

1. 被邀请人抵扣逻辑(原生Stripe Checkout支持)

不需要大幅改动现有结算流程,直接复用Stripe原生优惠码能力即可

  • 新用户进入订阅结算页时如果携带邀请码参数,后端先调用Stripe API校验该优惠码的有效性(未过期、未被使用)
  • 创建Stripe Checkout Session时,将校验通过的优惠码ID传入discounts参数,用户进入结算页后会自动应用25美元抵扣,无需手动输入
    示例代码(Python Stripe SDK):
session = stripe.checkout.Session.create(
  payment_method_types=['card'],
  line_items=[{
    'price': '你自己的订阅价格ID',
    'quantity': 1,
  }],
  mode='subscription',
  discounts=[{
    'promotion_code': '校验通过的邀请码对应的Stripe Promotion Code ID'
  }],
  success_url='你的成功回调地址',
  cancel_url='你的取消回调地址',
)

2. 邀请人奖励触发逻辑

  • 配置Stripe Webhook监听checkout.session.completed事件,过滤出mode为subscription、且结算时使用了有效邀请码的事件
  • 收到符合要求的事件后,从自有库中通过使用的优惠码匹配到对应的邀请人ID,给邀请人发放25美元抵扣,两种常用实现方案可选:
    • 方案1(自动抵扣,开发量最小):直接给邀请人的Stripe客户账户增加余额抵扣,后续用户续费的时候Stripe会自动用余额抵扣账单,无需额外开发
      对应代码:
    stripe.Customer.create_balance_transaction(
      '邀请人对应的Stripe客户ID',
      amount=-2500, # 单位为美分,负数代表给客户增加可抵扣余额
      currency='usd',
      description='邀请好友订阅奖励',
    )
    
    • 方案2(需用户主动使用):生成一个专属的25美元无门槛优惠码绑定到邀请人账号,下次用户订阅/续费的时候可以手动使用,适合需要明确提醒用户奖励到账的场景

边界规则配置(避免薅羊毛)

  • 创建Promotion Code的时候设置单码使用次数上限为1,避免同一个邀请码被多次使用触发多次奖励
  • 自有后端加新用户判定逻辑,只有首次完成订阅的用户使用邀请码才触发双向奖励,避免老用户反复注册套取奖励
  • 可增加退款观察期规则:被邀请人订阅生效超过7天(默认退款期)后再给邀请人发放奖励,避免恶意刷单退款套取奖励

内容的提问来源于stack exchange,提问作者Ankit Goyal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 08:15:00