You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Stripe集成时出现致命错误 提示需提供source或customer该如何解决?

Stripe 400报错「Must provide source or customer」原因及修复

报错原因

  • Stripe API参数对大小写敏感,你代码中传入的Source、Description参数首字母大写,不符合Stripe要求的全小写参数规范,导致平台无法识别你传入的支付凭证,因此判定缺少必填的source或customer参数。
  • 额外排查项:需确认前端提交的stripeToken为有效值,若$_POST['stripeToken']为空,也会触发同类报错。

修复方案

调整参数名为全小写,同时可增加token非空校验避免无效请求,修复后代码如下:

<?php 
include('config.php');

$price = 500;
$name = "augermates";

// 新增token有效性校验
if (empty($_POST['stripeToken'])) {
    die("支付凭证获取失败,请检查前端提交逻辑");
}
$token = $_POST['stripeToken'];

$data = \Stripe\Charge::create(array(
  "amount" => 500,
  "currency" => "USD",
  "description" => "augermates",
  "source" => $token
));

echo "<pre>";
print_r($token);
?>

注:当前Charge接口是Stripe旧版支付接口,新的集成建议使用PaymentIntent接口支持3DS等更多支付校验能力,现有兼容场景下按上述调整参数即可正常运行。

内容的提问来源于stack exchange,提问作者Rasheed Ur Rehman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 13:18:02