Stripe 订阅中途换套餐,按比例计费怎么出现

订阅中途换套餐时,Stripe 会产生“按比例计费”(proration)条目:把原套餐在当前计费周期内未使用的时间折算成抵扣,把新套餐在剩余时间内折算成费用,两者相加就是本次换套餐的净差额。以官方文档的示例为准:客户从 10 美元的月付套餐升级到 20 美元套餐,在计费周期一半时切换,原 10 美元套餐未使用时间抵扣 5 美元(记为 -5),新 20 美元套餐剩余时间计费 10 美元(记为 +10),净增 5 美元。最终金额还受订阅配置和账单状态影响,所以同一笔换套餐在不同账户里未必出现完全相同的条目。

原套餐余额、新套餐费用、账单调整
本文涉及的概念与核对环节。

机制:两条按比例条目相加

按比例计费的核心是把“部分使用”折算成钱。换套餐时通常涉及两条:

  • 抵扣(credit):原套餐在本周期剩余未使用时间对应的金额,记为负数;
  • 费用(debit):新套餐在本周期剩余时间对应的金额,记为正数。

两者相抵,得到本次换套餐的净差额。需要注意:负的按比例条目不会自动退款,正的按比例条目也不会立即扣款,两者都可以手动处理。另外,在真正应用变更之前,可以先预览按比例金额,确认后再操作。

一个可复算的假设例子

为了说明算术关系,这里做一个纯假设的例子:某订阅月付价格 30 美元,计费周期 30 天,客户在第 10 天(已用 10 天、剩余 20 天)从 30 美元套餐换到 60 美元套餐,并假设全程按天等比例折算:

  • 原套餐未使用时间抵扣:30 × 20/30 = 20 美元(记为 -20);
  • 新套餐剩余时间费用:60 × 20/30 = 40 美元(记为 +40);
  • 净差额:+20 美元。

如果反过来从 60 美元降到 30 美元,同样在第 10 天切换,则抵扣 40 美元、费用 20 美元,净差额为 -20 美元,形成一笔负的按比例条目。

这两个数字只是按“按天等比例”这一假设算出的示意,实际折算方式取决于订阅的计费配置和账单状态,不能直接套用到真实账户。

实际金额为什么可能不一样

上面的例子刻意做了简化。真实结果受配置和账单状态影响,至少包括:

  • 订阅的计费周期与按比例计算方式的具体设置;
  • 切换发生在周期中的哪个时点,剩余时间如何折算;
  • 账单状态,例如当前周期是否已出账、是否存在未结清项目;
  • 正负条目是否被手动处理,而不是自动退款或立即扣款。

因此,核对时不要只看“新旧价格差”,而要打开预览或账单明细,逐条对照抵扣与费用两项。

可以执行的核对动作

  1. 在应用变更前先预览按比例金额,记录抵扣和费用两条的数值。
  2. 确认切换时点:算出当前周期已用与剩余时间,与预览结果对照是否吻合。
  3. 检查账单状态:当前周期是否已出账、是否有未结清项,避免把历史账单混入本次差额。
  4. 明确负条目和正条目的处理方式:是否需要手动退款或手动扣款,而不是等待系统自动执行。
  5. 变更应用后,回看账单明细,确认实际条目与预览一致。

把“抵扣”和“费用”分开看,再叠加账单状态,就能解释大多数“金额和预期不符”的情况。以上为机制说明与假设示例,具体金额以你账户中的预览和账单为准。

原始资料

docs.stripe.com

上一篇 Stripe 试用期结束时,没有付款方式会怎样