Braintree 支付网关 - 获取客户的订阅详情

Posted

技术标签:

【中文标题】Braintree 支付网关 - 获取客户的订阅详情【英文标题】:Braintree payment gateway - Get customer's subscriptions details 【发布时间】:2018-01-09 10:05:54 【问题描述】:

我在我的 Rails 应用程序中使用 Braintree 支付网关。我想知道是否可以从中检索客户的订阅详细信息。根据文档,其中一种方法是subscription = Braintree::Subscription.find(id)

创建订阅时,plan_idamount 等基本对象已保存到数据库中。那么,如何检索与客户关联的订阅信息,例如next_billing_date

【问题讨论】:

next_billing_date 不是 find() 和 create() 返回的订阅对象的属性之一吗? 是的。但是我如何从网关返回next_billing_date,因为它不在我的数据库中? 【参考方案1】:

假设您有订阅 ID:

# Find the subscription
subscription = Braintree::Subscription.find(sub_id)

# Access the subscription's next billing date
subscription.next_billing_date

Braintree::Subscription.find() 返回一个Braintree::Subscription result object。

假设您有一个客户 ID:

# Find the customer
customer = Braintree::Customer.find(cust_id)

# Retrieve the customer's first payment method
pm = customer.payment_methods.first

# Retrieve the subscriptions created with that payment method
subscriptions = pm.subscriptions

# Access the subscription's next billing date
subscriptions.first.next_billing_date

Braintree::Customer.find() 返回一个Braintree::Customer response object。客户的payment methods can then be retrieved。订阅与付款方式相关联。有了付款方式后,您就可以检索an array of Braintree::Subscription objects。

【讨论】:

在检索到例如 subscription.next_billing_date 后,我如何在 html 上将其显示给用户,因为 next_billing_date 不在我的数据库中。 这是一个单独的问题。如果您无法通过研究找到答案,我建议您提出一个新问题。

以上是关于Braintree 支付网关 - 获取客户的订阅详情的主要内容,如果未能解决你的问题,请参考以下文章

在 Braintree 付款中搜索客户的有效订阅

在Braintree付款中搜索客户的有效订阅

关于 Braintree 支付网关与 Java 的集成

Braintree 如何更改订阅生命周期?

如何获取 Braintree 支付客户端令牌?

如何使用 Braintree.js 与 Braintree 支付网关集成? [关闭]