【问题标题】:Cancel stripe subscription via information in metadata通过元数据中的信息取消条带订阅
【发布时间】:2017-03-07 18:13:04
【问题描述】:

我目前正在尝试通过解析条带客户列表并在元数据匹配时搜索每个客户列表来取消订阅。

目前这不起作用。

customers = stripe.Customer.list(limit=100)
for c in customers.auto_paging_iter():
    if bool(c.metadata):
        try:
            if user.username == c.metadata.username:
                for s in c.subscriptions.data:
                    subscription = stripe.Subscription.retrieve(s['id'])
                    subscription.delete(at_period_end=True)
                commit()
                return jsonify(status=True)
        except:
            continue

我错过了什么吗?

【问题讨论】:

  • 代码看起来没问题。你能澄清什么不完全有效吗?您是否收到错误消息,或者什么也没发生,而您只是观察到您希望取消的订阅没有受到影响?
  • 所以我才想通,显然subscription = stripe.Subscription.retrieve(s['id']) 不起作用,它必须是subscription = c.subscriptions.retrieve(s['id'])

标签: python stripe-payments


【解决方案1】:

所以我只是想通了,显然

subscription = stripe.Subscription.retrieve(s['id']) 

没用

必须是

subscription = c.subscriptions.retrieve(s['id'])

【讨论】:

  • 啊,您可能使用的是不支持直接检索订阅的旧版本的 Python 绑定。它是在版本1.33.0中添加的。
  • 如果我更新了它是否反向兼容?因为我已经推送了更新,还没有更新pip
  • 更新后的版本应该完全向后兼容——引入重大更改时,Stripe 会更新主要版本号。
猜你喜欢
  • 2012-01-26
  • 2018-10-17
  • 1970-01-01
  • 2015-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-30
相关资源
最近更新 更多