条纹订阅不按比例分配日历计费?

问题描述 投票:0回答:1

通过 stripe-php SDK 使用结帐,我的网站拥有标准年度会员资格,每年费用为 100 美元。如果我在 2024 年 3 月 26 日注册,它将按预期在 2025 年 3 月 26 日自动续订。

我需要将计费时间表更改为日历年,即1月1日至12月31日。

我知道我可以将

billing_cycle_anchor
设置为 2025 年 1 月 31 日。但是,这引入了
proration_behavior
,即
always
none

Always - 按比例分配,因此,如果我在 3 月 26 日注册,它将向我收取 77 美元,并于 2025 年 1 月 31 日按全额发票向我开具发票。 - 今天的价格为 0 美元,并且在 2025 年 1 月 31 日之前无需付款,因此几乎一整年的无意免费会员资格。

$nextYear = date('Y') + 1;
$checkout_params = [
  'line_items' => [
    [
      'price' => $prices->data[0]->id,
      'quantity' => 1,
    ],
   ],
   'mode' => 'subscription',
   'success_url' => $success_url . '?success=true&session_id={CHECKOUT_SESSION_ID}',
   'cancel_url' => $return_url,
   'customer_email' => $email,
   'subscription_data' => [
     'billing_cycle_anchor' => strtotime("{$nextYear}-01-01"),
     'proration_behaviour' => 'none',
   ]
];

$checkout_session = \Stripe\Checkout\Session::create($checkout_params);

期望的结果

我不想按比例分配,如果有人今天(3 月 26 日)注册,我希望向他们收取 100 美元(年度订阅的全部费用)。然后再谈计费周期。这在 Stripe 中可能吗?

php stripe-payments
1个回答
0
投票

您可以使用

payment
模式结帐会话向您的客户收取 100 美元的临时会员资格(请记住设置 setup_future_usage 以保存此付款中使用的付款方式),并创建 订阅计划 来开始订阅明年1月1日。

© www.soinside.com 2019 - 2024. All rights reserved.