使用最新的条带版本从Stripe :: Transfer获取事务

时间:2014-12-10 08:35:28

标签: stripe-payments

我正在制作条纹最新版本。

当我尝试获取交易时:

  

条纹:: Transfer.all.first.transactions

我知道,最新的Stripe :: Transfer

没有交易方法
 undefined method `transactions' for #<Stripe::Transfer

条纹API是升级: 2014年8月4日

The transactions, summary, and other_transfers properties in automatic transfer responses have been removed in favor of the balance history endpoint (/v1/balance/history), which can be called with the transfer id (using the ?transfer= parameter) to filter transactions by transfer.

那么我们如何从Stripe传输中获取事务?

但它与Stripe旧版本配合使用。

1 个答案:

答案 0 :(得分:1)

根据您的需要,您有几个选择。如果您对某些费用有一定程度的详细信息,则可以获取与转移相关的所有费用,该转移仅会获取:

var options = {};
stripe.transfers.listTransactions(id, options);

另一方面,如果您想要更类似于旧的摘要对象,那么我将得到与转移相关的余额:

var options =  { transfer: id };
stripe.balance.listTransactions(options);

返还的余额将包含各种余额类型 - 第一个是整个实际转账,可以忽略,其余是收费,退款,调整等组合,包括每个余额。< / p>

在上述两种情况下,id都是指转帐ID。请注意,您需要循环使用这些项来获取所有项目 - 这可以通过Pagination下列出的几种方式完成。在上面的例子中,我检查结果是否包含has_more: true字段,如果是,则使用starting_after: X addecd再次循环到options对象,其中X是最后一个的ID在之前的通话中返还了费用/余额。