我在laravel中开发的应用程序中已将数据条集成为支付网关。我还可以使用以下代码全额退款。
$stripe = Stripe::make('sk_test_******');
$charge_id = Session::get('charge_id');
$amount = Session::get('payment_amount');
$refund = $stripe->refunds()->create(
$charge_id
);
现在,我想允许管理员从后端向客户部分退款,我尝试按照条带化文档在下面的代码中进行该操作。
$stripe = Stripe::make('sk_test_**********');
$charge_id = Session::get('charge_id');
$amount = Session::get('payment_amount');
$refund = $stripe->refunds()->create([
'charge' => $charge_id,
'amount' => '5',
'reason' => 'refund'
]);
但是我遇到了类似数组到字符串转换的错误。谁能帮助我解决此错误或告诉我这段代码有什么问题。
答案 0 :(得分:3)
在条纹documentation中,明确提到必须通过以下方式设置APIKEY
$stripe = new Stripe();
$stripe = Stripe::make('YOUR API KEY');
$charge_id = Session::get('charge_id');
$amount = Session::get('payment_amount');
$refund = $stripe->refunds()->create( $charge_id,$amount, ['reason' => 'refund'
]);
警告:要退还部分费用,请提供一个金额参数,以美分为整数或您所使用的特定货币的费用货币的最小货币单位。
答案 1 :(得分:1)
因为您传递了错误的参数。更改:
$refund = $stripe->refunds()->create([
'charge' => $charge_id,
'amount' => '5',
'reason' => 'refund'
]);
收件人:
$refund = $stripe->refunds()->create($charge_id, 5, ['reason' => 'refund']);