这是使用API在Python中创建Braintree订阅的正确方法吗
为了让大家更清楚,我在这里提出这个问题,并分享我迄今为止学到的知识 首先,如果您想要一个简单、易于开发的交易系统,Braintree就是它。非常简单,和Django玩得很好 然而,订阅方面的事情还没有那么清楚。所以,我正在分享一些代码,以获得反馈并帮助简化 首先。。一些假设 工作流程 使用API创建订阅的过程如下所示: (请不要在“控制面板”中向我发送有关如何执行此操作的文档。可以在此处找到订阅工作流的广泛描述:)这是使用API在Python中创建Braintree订阅的正确方法吗,python,django,django-views,braintree,braintree-sandbox,Python,Django,Django Views,Braintree,Braintree Sandbox,为了让大家更清楚,我在这里提出这个问题,并分享我迄今为止学到的知识 首先,如果您想要一个简单、易于开发的交易系统,Braintree就是它。非常简单,和Django玩得很好 然而,订阅方面的事情还没有那么清楚。所以,我正在分享一些代码,以获得反馈并帮助简化 首先。。一些假设 工作流程 使用API创建订阅的过程如下所示: (请不要在“控制面板”中向我发送有关如何执行此操作的文档。可以在此处找到订阅工作流的广泛描述:) 使用braintree.ClientToken.generate()创建客户端令
braintree.ClientToken.generate()创建客户端令牌
braintree.customer.Create()
创建客户customer.create()响应中获取客户id
braintree.subscription.Create()
传递新客户和名为payment\u method\u token的新客户令牌创建订阅
custy\u result=braintree.Customer.create({
“名字”:self.request.POST.get(“名字”),
“姓氏”:self.request.POST.get('last_name'),
“公司”:self.request.POST.get('company_name'),
“电子邮件”:self.request.POST.get(“办公室电子邮件”),
“电话”:self.request.POST.get(“办公室电话”),
“付款方式”为“假有效时间”,用于测试
“信用卡”:{
“账单地址”:{
“街道地址”:self.request.POST.get(“地址”),
“Location”:self.request.POST.get('city'),
“区域”:self.request.POST.get('state'),
“邮政编码”:self.request.POST.get('postal'),
}
}
})
如果custy_result.is_success:
打印(“客户成功!”)
其他:
对于custy_result.errors.deep_错误中的错误:
打印(错误代码)
打印(错误消息)
#在braintree中创建订阅
sub_result=braintree.Subscription.create({
“支付方法令牌”:“支付令牌”,您的custy\u结果
应具有payment\u方法
属性:
result = braintree.Subscription.create({
"payment_method_token": custy_result.payment_methods[0].token,
"plan_id": "planID"
})
很好!非常接近。只是,它是custy\u result.customer.payment\u methods[0]。token
result = braintree.Subscription.create({
"payment_method_token": custy_result.payment_methods[0].token,
"plan_id": "planID"
})