付款意图问题Stripe Connect

问题描述

我正在用WordPress为客户开发一个小型在线市场,并且正在使用Stripe Connect。我想要完成的是:

  1. 用户A正在发布项目,用户B对该项目进行出价,被接受并交付工作。
  2. 用户A现在必须支付可交付成果的约定金额
  3. 用户A收取卡费,平台帐户获取应用程序费用,Stripe收取Stripe费用,用户B收取剩余金额

我创建了以下功能,其中包含付款意向,目的地费用和申请金额费用,如下所述:https://stripe.com/docs/connect/collect-then-transfer-guide

function destination_charge(){

// Set your secret key. Remember to switch to your live secret key in production!
\Stripe\Stripe::setApiKey('sk_test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxx');

$payment_intent = \Stripe\PaymentIntent::create([
    'payment_method_types' => ['card'],'amount' => 1000,'currency' => 'usd','application_fee_amount' => 123,'transfer_data' => [
      'destination' => 'acct_UserB',],]);
}

因此,如果我正确理解了文档和概念,则当用户A触发上述功能时,用户A会从其卡上收取10美元,应用程序会收取1.23美元的费用,而用户B会得到剩余金额。 Stripe从申请中扣除其服务费。尽管我不从表单中收取任何费用,但由于用户A是经过验证的关联帐户,并且Stripe Connect中已经有卡的详细信息。

不幸的是,事实并非如此,即使我尝试将收费与转帐分开,如此处所述:https://stripe.com/docs/connect/charges-transfers,也无法正常工作。

Stripe Connect为美国企业设置了美元货币。我在测试环境中使用Express Accounts。 旁注:我已经尝试使用充值来添加测试资金并创建余额,但是出于某些原因,“添加至余额”按钮不可用。 https://stripe.com/docs/connect/top-ups

我在这里想念什么?目的地收费是我要完成的目标的正确选择吗?

任何建议都会有所帮助。

谢谢。

解决方法

您可以尝试使用stripe-account标头。使用此功能,您只是代表连接的帐户发出请求。付款将自动存入关联的帐户。

$payment_intent = \Stripe\PaymentIntent::create([
    'payment_method_types' => ['card'],'amount' => 1000,'currency' => 'usd','application_fee_amount' => 123,],['stripe-account' => 'acct_UserB']);
}

\Stripe\PaymentIntent::confirm(
    $payment_intent->id,['payment_method' => 'pm_card_visa']
);

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...