我正在尝试对通过条纹收费发送的所有交易实施申请费 . 我创建了一个条带平台,并将一个帐户连接到它,但每当我将费用添加到费用时,它就不会出现在条带仪表板中 .
以下代码适用于平台 .
Stripe::setApiKey("sk_test_#platformcode");
Stripe_Charge::create(
array(
"amount" => 10000,
"currency" => "usd",
"source" => $_POST['stripeToken'],
));
此代码也有效 . 它将全部费用发送到连接的帐户,并向平台收取条带费 .
Stripe::setApiKey("sk_test_#platformcode");
Stripe_Charge::create(
array(
"amount" => 10000,
"currency" => "usd",
"source" => $_POST['stripeToken'],
"desitnation" => 'acct_#connectedaccountid'
));
但是,即使它来自条纹网站,以下也不起作用 .
Stripe::setApiKey("sk_test_#platformcode");
Stripe_Charge::create(
array(
"amount" => 10000,
"currency" => "usd",
"source" => $_POST['stripeToken'],
"application_fee" => 1000
),array("stripe_account" => 'acct_#connectedaccountid'));
此代码返回并告诉网站付款已经完成,但是当我检查条纹时,它从未在任何一个帐户中存在而不是在收取的费用中 .
更多信息:令牌使用平台的pk_test#platformcode .
4 回答
使用
destination
参数可以创建充电through the platform's account . 在这种情况下,平台将支付Stripe的费用,并负责退款和退款 .Authenticating as the connected account,你可以创建一个充电directly on it:
在这两个示例中,
{PLATFORM_SECRET_KEY}
是平台的秘密API密钥(以sk_
开头),{CONNECTED_STRIPE_ACCOUNT_ID}
是已连接帐户的ID(以acct_
开头) .如果第二个样本没有't work for you, you might want to make sure you'使用最新版本的Stripe PHP bindings .
您应该收取与此类似的目的地费用
这是红宝石的有效解决方案 . 请参阅link以了解有关关联帐户和平台帐户之间资金流动的更多信息
通常,条纹支持这种情况下的申请费 . 该服务不直接收取费用 . 当客户使用使用条带进行交易的服务(或主机站点)向另一个客户汇款时,应该存在两种费用 .
条纹产生第一种费用 . 为服务(主机站点)产生另一种费用 .
这样服务(主机站点)就可以从客户那里获利 .
首先,我建议你查看这个网址:https://stripe.com/docs/connect/direct-charges
并且它说:“直接在连接帐户上创建的费用仅在该帐户上报告;它们不会显示在您平台的仪表板,导出或其他报告中,但您始终可以通过API检索此信息 . ”
修正:在这里为未来使用Stripe申请费的人发布答案,因为我无法在任何地方找到答案 .
代码如下 . 但主要问题是您不应该使用连接帐户ID . 您应该使用将帐户连接在一起时生成的sk_test_#code# . 它不是平台或连接用户sk_test_#code# . 当用户与条带平台连接时,它是由Oauth生成的代码 . 代码也有修改 .