我们使用 Stripe 作为支付网关,我们有一个年度计划,即计划的计费周期为 1 年。
在计费周期内,用户可以更新选择更多席位,这将导致订阅计划的数量增加。
Subscription subscription = Subscription.retrieve(paymentDetails.getSubscriptionId());
int currentQuentity = subscription.getQuantity();
Map<String, Object> updateParams = new HashMap<String, Object>();
updateParams.put("quantity", (currentQuentity + changeInQuantity));
subscription.update(updateParams);
Run Code Online (Sandbox Code Playgroud)
因此,对于任何更新条带退款(如果数量减少)和费用(如果数量增加)在计费周期结束时按比例分配。
在我们的业务逻辑中,我们需要在每次数量更新时立即付款(收费或退款),而不是在计费周期结束时。有没有办法在条纹中实现这一点。
我花了很多时间试图解决这个问题,我希望我可以节省其他人的时间。要收取更改数量或订阅计划的费用,您需要执行以下操作:
仅当完成所有步骤后,您才成功对订阅更改收取费用(并且仅对更改收取费用)。您可以一次性完成所有这一切。客户最后应该会收到来自 Stripe 的发票电子邮件。
对我来说,让事情变得复杂的是,从文档中阅读,我得到的印象是,只要订阅设置为 .Stripe 就会自动为我完成所有这一切"billing": "charge_automatically"。事实并非如此,在 Stripe 的辩护中,他们在与升级和降级计划相关的文档页面底部提到了这一点:
如果您希望客户在同一计费周期切换到更昂贵的计划时立即支付差价,您需要在切换后生成发票。
| 归档时间: |
|
| 查看次数: |
1359 次 |
| 最近记录: |