【问题标题】:Stripe Subscription Events Django条纹订阅事件 Django
【发布时间】:2020-05-04 10:41:55
【问题描述】:
我已经在我的 Django Web 应用程序上使用 Stripe 设置了一个基本订阅系统,但我对如何在我的数据库中记录从 stripe 发送的事件感到困惑,我是否会利用 Django REST API 来监听事件并使用它运行与事件对应的方法。
这是一个示例,客户注册订阅并全额付款,订阅清除条带并变为活动状态。一个月后,客户的信用卡再次被扣款,但被拒绝。我读到here,当这种情况发生时,Stripe 会发送两个事件:charge.failed 事件和 invoice.payment_failed。我将如何监听这些事件?
【问题讨论】:
标签:
django
stripe-payments
【解决方案1】:
您不需要 Rest API,
你的 urls.py
url(r'^stripe/webhook/', stripe_webhook, name='stripe_webhook'),
你的意见.py
@csrf_exempt
def stripe_webhook(request):
try:
event_json = json.loads(request.body)
if event_json['type'] == 'invoice.payment_failed':
pass
# get data from evet_json and get your logic here.
except Exception as e:
return JsonResponse({'error': str(e)})
在stripe webhooks中添加上面的url(Stripe Dashboard->Developers->Webhooks->Add endpoint)并使用ngrok 在localhost中调试。