无法使用ServiceStack.Stripe

时间:2016-10-20 09:15:33

标签: stripe-payments stripe.net

我使用ServiceStack.Stripe.dll在条带中创建订阅。此订阅适用于在我们的应用程序中创建新用户。下面是使用VB.Net创建新订阅的代码。当用户第一次注册我们的应用程序时,将创建此订阅。

        Dim gateway = New StripeGateway(stripeKey)
        If (list("CouponId").ToString() = "") Then GoTo Line1 Else GoTo Line2

Line1:Dim subscription = gateway.Post(新的SubscribeStripeCustomer(){_                 .CustomerId =" cus_96OuD7MM31KKR3",_                 .Plan =" IGmonthly"             })

        If subscription.Id = "" Then GoTo Line2 

Line2:Dim subscription1 = gateway.Post(新的SubscribeStripeCustomer(){_                  .CustomerId =" cus_96OuD7MM31KKR3",_                  .Plan =" IG-monthly",_                  .Coupon =" choicefree2" _              })

用户在条带中成功创建。我们的要求是再次在我们的应用程序中购买“Email on Acid”时,为同一客户创建另一个条带订阅。为了完成这项任务,我写了下面的代码。

            Dim subscription As ServiceStack.Stripe.Types.StripeSubscription
            If list("CouponCode") <> "" Then

                subscription = gateway.Post(New SubscribeStripeCustomer() With { _
                             .CustomerId = "cus_96OuD7MM31KKR3K", _
                                 .Plan = "EOAMTH", _
                                 .Coupon = "testc2"
                             })
            Else
                subscription = gateway.Post(New SubscribeStripeCustomer() With { _
                             .CustomerId = "cus_96OuD7MM31KKR3K", _
                                 .Plan = "EOAMTHS" _
                             })
            End If

这里再次成功创建订阅,但它正在结束现有订阅(IGMonthly),并且创建了EOAMTHS的新订阅。它覆盖现有订阅。我们的要求是为同一客户运行两种订阅。如果用户购买“Email On Acid”,那么除了IG-Monthly计划外,他还必须根据订阅日期收取EOAMTH计划的费用。

我已更新旧的条带dll,现在我正在使用ServiceStack.Stripe dll(Verson 4.5.0.0),但此问题仍无法解决。

请建议我如何满足我的要求。

Thnaks&amp;的问候,

的Piyush

1 个答案:

答案 0 :(得分:2)

似乎ServiceStack.Stripe使用旧的/customers/cus_.../subscription端点:https://github.com/ServiceStack/Stripe/blob/5578df821acacfa56b9a18edc49dc8540a0835bc/src/Stripe/StripeGateway.cs#L242

因此,每个客户只能管理一次订阅。需要更新以使用API​​版本2014-01-31中添加的新/customers/cus_.../subscriptions(复数)。

作为替代方案,Stripe.net支持creating multiple subscriptions