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

如何将Stripe Subscription的账单周期日期设置为每月1日?

Stripe订阅固定每月1日出账操作方法

1 新建订阅时设置

  • 核心是指定billing_cycle_anchor参数为你首次要锚定的当月1日对应零点的Unix时间戳,同时搭配proration_behavior参数设置首月按天折算费用的规则即可,设置完成后Stripe会自动按锚定日期循环出账,无需额外配置。
  • Node.js侧代码示例:
const subscription = await stripe.subscriptions.create({
  customer: 'cus_你的用户ID',
  items: [{ price: 'price_你的订阅商品ID' }],
  // 示例值为2024年6月1日0点UTC时间戳,需要根据你实际需要的首次出账月换算对应时间戳
  billing_cycle_anchor: 1717209600,
  // 首月费用按实际使用天数折算,若不需要折算直接收全额可改为'none'
  proration_behavior: 'create_prorations',
});
  • 后台手动新建操作:在创建订阅的表单页面找到「账单周期锚点」选项,手动选择为下一个1日,保存即可。

2 修改已有订阅的出账日期为每月1日

  • 需要更新订阅的billing_cycle_anchor参数,同时配置proration规则避免产生不必要的折算账单。
  • Node.js侧代码示例:
const subscription = await stripe.subscriptions.update(
  'sub_你的订阅ID',
  {
    billing_cycle_anchor: 1717209600,
    proration_behavior: 'none',
    payment_behavior: 'default_incomplete',
    expand: ['latest_invoice.payment_intent'],
  }
);
  • 后台手动修改操作:进入对应订阅的详情页,点击「编辑」按钮,找到账单周期设置项,修改锚定日期为下一个月的1日,保存后生效。

注意事项

  • billing_cycle_anchor使用的是UTC时间,如果你需要按北京时间的每月1日出账,记得把时间换算成UTC对应时间戳,比如北京时间1日0点对应UTC前一天的16点,调整锚点时间时要对应换算。
  • 如果设置锚点时当前日期已经过了当月1日,锚点会自动跳到下一个月的1日,首月费用按你配置的proration规则计算。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 07:24:01