【问题标题】:Stripe: accessing transfers after a connected account gets payed outStripe:在连接的账户被支付后访问转账
【发布时间】:2019-03-24 04:33:51
【问题描述】:

我需要弄清楚哪些转账是自定义关联账户付款的一部分!

我正在使用 Stripe 并创建转账以将资金从我的平台转移到不同的自定义关联账户。一个自定义关联账户可能会收到 300 多笔不同金额的转账。当 Stripe 向连接的账户付款时,我收到了几个 webhook(payout.created、payout.paid),它们包含一个余额交易 id,看起来它是唯一可用于从中获取任何转账的 id支付,但如何?或者这不是你会做的吗?

仅供参考 - 我需要一种方法来更新每个关联的帐户转账,以显示它们现在已付款,而不是待处理...

【问题讨论】:

    标签: stripe-payments


    【解决方案1】:

    当您有支付 ID (po_xxx) 时,您可以通过该 ID 过滤关联账户上的余额交易 - 这将返回在该支付对象中支付的所有交易:https://stripe.com/docs/api/balance/balance_history#balance_history-payout

    从这些交易中,你可以找到交易的来源:https://stripe.com/docs/api/balance/balance_transaction#balance_transaction_object-source

    当您向关联账户进行转账时,关联账户上会创建一个py_xxx 对象,代表付款,这将是余额交易的source。这个支付对象有一个source_transfer字段,它是转账的ID(tr_xxx)。

    综上所述,如果您想知道在给定的支付中支付了哪些转账,您可以将列表支付调用与 API 的 expanding objects feature 结合起来,以一次检索所有信息。在 Node 中是这样的:

    await stripe.balance.listTransactions({
        payout: "po_xxx",
        expand : ["data.source.source_transfer"]
     }, {stripe_account : "{CONNECTED_ACCOUNT_ID"}).autoPagingEach(function(transaction) {
        console.log(transaction.source.source_transfer.id); // the tr_xx transfer object 
     });
    

    【讨论】:

    • 我收到此错误:STRIPE.balance.listTransactions(...).autoPagingEach is not a function
    • 听起来您使用的是旧版本的条带节点。 github.com/stripe/stripe-node/blob/master/…
    • 你是对的。起初我以为你不是因为npm view stripe 告诉我我们在 6.25.1(最新)上,但后来我在实际代码中运行了console.log(require('stripe').PACKAGE_VERSION),它确实很旧。 package.json 也表明了这一点。非常感谢。
    猜你喜欢
    • 2018-08-06
    • 2021-04-02
    • 2011-04-20
    • 2023-03-10
    • 2021-12-27
    • 2016-01-09
    • 2021-03-03
    • 2020-06-04
    • 2018-10-26
    相关资源
    最近更新 更多