以相同的价格更改条纹计划

时间:2019-09-27 08:48:59

标签: stripe-payments

我最近更改了计划的名称,包括其ID。

我的一些计划具有相同的结构(相同的金额,期限,试用期等),只是名称已更改。

使用Stripe API,我希望将所有当前客户转移到功能相似的新计划中。

问题在于,我现在不想收费,也不想更改其期限,只需更改Stripe订阅

我非常确定可以使用更新订阅 API端点,但是可以通过试用billing_cycle_anchor和days_until_due进行操作。

我希望这已经完成,并且有人已经对此有一个可行的解决方案了:)

由于与API相关,因此不需要特定的语言。

2 个答案:

答案 0 :(得分:0)

根据您的描述,听起来这应该是一个相当容易的过渡!就是说,当我尝试进行任何 订阅类型更改时,我的建议是首先在Stripe的测试模式下进行尝试。

如果您的旧订阅计划和新订阅计划的期限相同(即monthly -> monthly),则结算期将不会更改,并且条带化不会尝试收款,直到当前的账单期结束为止。

以下是Stripe要说的:

https://stripe.com/docs/billing/subscriptions/upgrading-downgrading

  

如果两个计划具有相同的计费周期(intervalinterval_count的组合),则订阅将保留相同的计费日期。

     

Stripe立即尝试为这些订阅更改付款:

     
      
  • 从不需要付款(例如由于试用或免费计划的订阅)到付费订阅
  •   
  • 结算时间更改
  •   

关于如何实施此过程:

  1. 如果您要进行任何价格更改,请提前将这些更改清楚地告知用户。
  2. 列出您的订阅https://stripe.com/docs/api/subscriptions/list
  3. 对于每个订阅,请查看随附的计划,更新订阅以使用适当的新计划。如果您不希望下一个发票在结算周期的中途反映出proration的变化,请确保通过prorate=false https://stripe.com/docs/api/subscriptions/update

/v1/invoices/upcoming端点也可以是一个有用的工具,可以预览下一个计费期的订阅更改情况。

  

您随时可以预览客户即将收到的发票。这将向您显示所有待处理的费用,包括订阅续订费用,发票项目费用等。它还将向您显示适用于客户的任何折扣。 [...]您可以预览更新订阅的效果,包括将按比例分配的预览。

https://stripe.com/docs/api/invoices/upcoming

答案 1 :(得分:0)

这是对我问题的务实回应。它将计划更新为另一个具有相同属性(重复,金额等)的计划。

stripe

还有def stripe(method, url, **kwargs): headers = { 'Stripe-Version': '2019-08-14' } response = getattr(requests, method)( 'https://api.stripe.com/v1{0}'.format(url), auth=('STRIPE_PRIVATE_KEY', ''), headers=headers, timeout=15, **kwargs ) response.raise_for_status() return response 函数:

class ImperativeUserManager {
    private(set) var currentUser: User? {
        didSet {
            if oldValue != currentUser {
                NotificationCenter.default.post(name: NSNotification.Name("userStateDidChange"), object: nil)
                // Observers that receive this notification might then check either currentUser or userIsLoggedIn for the latest state
            }
        }
    }

    var userIsLoggedIn: Bool {
        currentUser != nil
    }

    // ...
}