我已经使用Laravel Cashier成功创建了订阅,但我对付款有疑问。
我的用例是我以订阅的形式从用户收集金额,然后在用户的特定操作之后,将一定金额进一步转移给供应商。 我正在使用手动转账支付,似乎它有我需要的一切(https://stripe.com/docs/connect/charges-transfers)。
但是,为了创建从一个Stripe帐户到另一个帐户的转帐,我必须分配一个字段" transfer_group"对我负责。由于我没有为我的订阅使用费用,但我没有使用收银员方法,我没有这个选项。
调查" newSubscription"的实施情况方法或"创建" Billable类中的方法我找不到任何可以通过它的方法。 这可以实现,还是我必须使用普通的Stripe SDK重新实现我的订阅?
这是我的订阅代码的样子:
$response = $customer->newSubscription($plan->name, $plan->plan_id)->create($request->token, [
'email' => $user['profile']['email'],
'description' => $user['profile']['biography'],
'metadata' => [
'name' => $user['profile']['name'],
'uuid' => $request->uuid
]
]);
此处传递的所有这些选项都与Customer对象相关,而不是Charge。根据Stripe文档,我需要类似的东西:
$charge = \Stripe\Charge::create(array(
"amount" => 10000,
"currency" => "eur",
"source" => "tok_visa",
"transfer_group" => "{ORDER10}",
));
答案 0 :(得分:1)
由于您无法在此处控制费用创建,因此您无法通过transfer_group
。当您通过API创建传输时,您应该做的是传递source_transaction: "ch_XXXX"
。这将确保转移与订阅相关的费用相关联,并符合Stripe的要求。
直接在条带文档here中记录。