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

如何通过Firebase Stripe扩展设置免费试用?后台无设置入口求助

使用Firebase Stripe扩展创建免费试用的解决方案

核心结论

完全可以通过Firebase Stripe扩展实现免费试用,你的代码方向是对的,问题出在参数逻辑和Stripe后台设置的细节上。

参数用法修正

你同时添加了trial_period_days和trial_from_plan,这两个参数存在冲突:

  • trial_period_days: 7:直接强制设置7天试用,优先级高于产品本身的试用配置
  • trial_from_plan: true:要求Stripe使用你在Stripe后台给产品价格设置的试用周期

如果不需要依赖后台配置,直接保留trial_period_days即可,删掉trial_from_plan避免逻辑冲突:

const sessionRef = await addDoc(
  collection(db, "users", user.uid, "checkout_sessions"),
  {
    price: selectedProduct.priceId,
    success_url: `${window.location.origin}/selector/dashboard`,
    cancel_url: `${window.location.origin}/upgrade`,
    allow_promotion_codes: true,
    trial_period_days: 7, // 直接指定试用天数,无需后台预先设置
  },
);

Stripe后台找不到试用入口的原因

只有订阅类型的产品价格才能设置试用周期,一次性产品没有这个选项:

  1. 创建产品时,先选择「订阅」类型,而非「一次性」
  2. 进入价格设置环节,展开「高级选项」(默认可能是折叠状态),就能看到「试用周期」的设置项

如果你的产品是一次性类型,后台确实没有试用设置,这时候只能通过代码里的trial_period_days实现,但这种试用不会自动扣费,用户结账时也无需提供支付方式,和订阅型试用逻辑不同。

额外注意事项

  • 确保Firebase Stripe扩展是最新版本,旧版本可能不支持部分试用参数
  • 如果是订阅型产品,想要用户试用时无需提供支付方式,需要在Stripe后台价格设置的「高级选项」里开启「无卡试用」,或者在代码中添加payment_method_collection: 'if_required'参数

内容的提问来源于stack exchange,提问作者Thomas Ventura

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 00:35:18