【问题标题】:Stripe Products - Changing plan is not removing the old planStripe Products - 更改计划不会删除旧计划
【发布时间】:2018-04-10 04:48:13
【问题描述】:

我最近切换到了最新的条带 API,计划已转移到产品中。一切正常,但更改计划也保留了以前没有发生的旧计划。

如果我为用户订阅计划 A,则将计划更改为计划 B,现在不是为用户显示一个计划,而是显示两个计划。

因此,如果我尝试切换到计划 A,则会引发错误:

Stripe.StripeException: Cannot add multiple subscription items with the same plan:

以下是我的代码,升级前运行良好:

public async Task SetPlan(string subscriptionId, string plan)
    {
        var subscriptionService = new StripeSubscriptionService();
        var items = new List<StripeSubscriptionItemUpdateOption>()
        {
            new StripeSubscriptionItemUpdateOption() { PlanId = plan }
        };
        var subscriptionOptions = new StripeSubscriptionUpdateOptions()
        {
            CancelAtPeriodEnd = false,
            Prorate = true,
            Items = items
        };
        await subscriptionService.UpdateAsync(subscriptionId, subscriptionOptions);
    }

【问题讨论】:

    标签: stripe-payments stripe.net


    【解决方案1】:

    您在这里的调用是添加一个新的项目/计划,而不是替换现有的。

    要将一个计划替换为另一个计划,您还需要在 Id 中传递当前订阅项目的 ID 以及新的计划 ID 才能正常工作。

    【讨论】:

      猜你喜欢
      • 2020-01-27
      • 1970-01-01
      • 1970-01-01
      • 2014-07-04
      • 2017-02-16
      • 1970-01-01
      • 1970-01-01
      • 2022-01-06
      • 2019-04-06
      相关资源
      最近更新 更多