首页 > 解决方案 > 条纹连接帐户上的付款意图 on_behalf_of 与条纹帐户标头

问题描述

我对在标头中传入条带连接子帐户与在使用 Payment Intents API 时使用 on_behalf_of 和 transfer_data[destination] 作为 POST 表单的一部分之间的区别感到困惑。

对于付款意图 - 将子帐户作为标题传递是工作的,而使用“on_behalf_of”确实有效

尽管客户是在主连接帐户上创建的,但执行以下操作会导致条带抱怨缺少客户帐户:

curl https://api.stripe.com/v1/payment_intents \
-u sk_test_XXX: \
-X POST \
-d amount=2000 \
-d currency=usd \
-d customer=cus_FROMBEFORE
-d capture_method=automatic
-d confirm=true
-d payment_method=pm_FROM_ELEMENTS
-H "stripe-account: acct_XXXX"

以下作品:

curl https://api.stripe.com/v1/payment_intents \
-u sk_test_XXX: \
-X POST \
-d amount=2000 \
-d currency=usd \
-d customer=cus_FROMBEFORE
-d capture_method=automatic
-d confirm=true
-d payment_method=pm_FROM_ELEMENTS
-d on_befalf_of=acct_XXXX
-d transfer_data[destination]=acct_XXX

这两种方法之间有区别吗?或者我可以使用“on_behalf_of”而不用担心条纹费用/退款/信用卡对帐单等,因为它们都应该在子账户而不是连接账户下?

谢谢!

标签: stripe-payments

解决方案


您的第一个示例是创建Direct Charge,这意味着charge将在连接帐户上创建并要求连接帐户customer上存在(您也可以使用共享客户customer从您的平台帐户中使用)。资金将直接进入关联账户,Stripe 的费用将被扣除,您的交易费用将被取出并发送到您的平台。

另一方面,您的第二个示例是创建目的地费用,其中charge将存在于平台帐户上并使用customer也在平台帐户上的 a。在这种情况下,您的平台将收到资金,支付 Stripe 费用,然后您将您想要的金额转入关联账户。

Stripe 的文档中也有一个很好的选项总结。


推荐阅读