如何在 Stripe 中收取少于授权金额的金额

How to charge amount less than the authorization amount in Stripe

我正在尝试以下操作但出现错误: 为第 156 行 /home/ubuntu/workspace/vendor/stripe/stripe-php/lib/ApiRequestor.php 中的 foreach() 提供的参数无效

这是我的代码,我第一次授权 25.00 美元,捕获为假。然后想以较少的 23.00 美元捕获。样本不是很清楚

$charge = \Stripe\Charge::create(array(
  "amount" => 2500,
  "currency" => "usd",
  "capture" => false,
  "customer" => $stripecustid));

$chargeid = $charge->id;

$ch = \Stripe\Charge::retrieve($chargeid);

$captured = $ch->capture(2300);

这应该可以满足您的要求:

$captured = $ch->capture(array(
    "amount" => 2300
));

这是 "capture charge" API 调用的文档:https://stripe.com/docs/api#capture_charge