客户和订阅之间的连接:Braintree API PHP
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了客户和订阅之间的连接:Braintree API PHP相关的知识,希望对你有一定的参考价值。
我正在努力让我们的Braintree帐户中的所有活跃成员。我可以列出所有客户,但我不知道如何列出活动客户。
在Braintree仪表板中,我可以通过转到订阅并过滤所有活动订阅然后单击订阅ID轻松地看到它。从那里我可以看到哪个客户有该订阅ID。
然后我尝试首先获取所有活动订阅,但我找不到与任何客户的任何连接。
我正在使用php SDK。
这是我如何获得我们的有效订阅。
我的库中的订阅代码:
function active_subscriptions(){
return Braintree_Configuration::gateway()->subscription()->search([
Braintree_SubscriptionSearch::status()->in([Braintree_Subscription::ACTIVE])
]);
}
这是控制器的:
function active_subscriptions(){
$active_subscriptions = $this->braintree_lib->active_subscriptions();
$counter = 5;
foreach($active_subscriptions as $subscription) {
if($counter == 0){
die();
}
echo 'Subscription ID: '.$subscription->id.'<br />';
echo 'merchantAccountId: '.$subscription->merchantAccountId.'<br />';
echo 'planId: '.$subscription->planId.'<br /><br />';
$counter--;
}
}
我找到了this,但它在Ruby on Rails中,并且文档中没有关于它的详细信息。
答案
完全披露:我在Braintree工作。如果您有任何其他问题,请随时联系support。
只是为了确保我理解您要查找的结果:您当前正在尝试检索与活动订阅绑定的所有客户记录,对吗?
如果是这样,您可以通过执行以下操作来实现此目的:
- 迭代从search结果收到的有效订阅集合。
- 解析每个subscription object以获取与每个订阅关联的付款方式令牌。
- 另外,运行paymentMethod.find()调用以检索付款方式的对象。
- 付款方式对象将包含customer ID。
完成上述步骤后,您可以根据结果创建一个列表,其中包含所有具有有效订阅的客户。
以下是如何实现此目标的基本示例:
$collection = $gateway->subscription()->search([
Braintree_SubscriptionSearch::status()->in(
[Braintree_Subscription::ACTIVE]
)
]);
foreach($collection as $subscription) {
$token = $subscription->paymentMethodToken;
$paymentMethod = $gateway->paymentMethod()->find($token);
$customer = $paymentMethod->customerId;
echo $customer . "
";
}
如果这不是您想要的,或者您有任何其他问题,您可以直接联系Braintree支持,我们可以为您提供进一步的帮助。
以上是关于客户和订阅之间的连接:Braintree API PHP的主要内容,如果未能解决你的问题,请参考以下文章