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

Stripe Connect直连账户Checkout Session回调500错误排查求助

问题定位指导:Stripe Checkout Session 回调500错误

1. 优先排查Webhook签名验证问题

  • 切换到关联账户收费模式后,Webhook签名密钥必须使用关联账户的专属密钥,而非平台账户的密钥。很多新手会直接沿用平台密钥验证关联账户的事件,导致签名验证失败直接抛出500错误。
  • 检查PHP回调代码中Stripe\Webhook::constructEvent()方法使用的密钥,确认是关联账户的Webhook签名密钥(在Stripe后台关联账户的Webhook设置中获取)。

2. 确认事件接收端点的归属

  • 创建Session时指定了stripe_account参数的话,该Session的所有事件(如checkout.session.completed)会发送到关联账户配置的Webhook端点,而非平台账户的端点。
  • 登录Stripe后台,检查关联账户的Webhook配置:
    • 是否添加了正确的回调URL
    • 是否开启了checkout.session.completed等必要事件
    • 是否使用了关联账户的签名密钥

3. 客户资源跨账户问题排查

  • 若创建Session时传入了平台账户下的customer ID,而Session归属关联账户,会导致资源不匹配问题(但你提到创建Session正常,可能未指定customer参数)。
  • 检查创建Session的PHP代码:
    • 若需要关联账户下的客户,创建时必须指定stripe_account参数:
      // 正确:在关联账户下创建客户
      $customer = \Stripe\Customer::create(
        ['email' => 'user@example.com'],
        ['stripe_account' => 'acct_xxx'] // 替换为你的关联账户ID
      );
      
    • 创建Session时,若传入customer参数,必须是关联账户下的客户ID。

4. 给回调代码添加错误捕获

  • 新手代码常因未做异常处理,导致错误直接返回500而看不到具体原因。给回调代码加上try-catch并记录错误日志:
    try {
      $event = \Stripe\Webhook::constructEvent(
        file_get_contents('php://input'),
        $_SERVER['HTTP_STRIPE_SIGNATURE'],
        $webhook_secret // 关联账户的Webhook密钥
      );
      // 处理事件逻辑
      http_response_code(200);
    } catch (\Exception $e) {
      // 记录错误到日志文件
      error_log('Stripe Webhook Error: ' . $e->getMessage());
      http_response_code(400);
      exit();
    }
    
  • 查看日志就能明确是签名错误、Session不存在还是其他问题。

5. 分析Stripe日志的关键细节

  • 从你提供的Stripe日志截图中重点关注:
    • 事件的account字段:确认事件属于平台账户还是关联账户
    • 错误信息关键词:如Invalid signature(签名错误)、No such checkout session(Session不存在)
    • 若出现No such checkout session,说明你在回调中查询Session时未指定关联账户ID,需修正:
      // 正确:查询关联账户下的Session
      $session = \Stripe\Checkout\Session::retrieve(
        'cs_xxx',
        ['stripe_account' => 'acct_xxx']
      );
      

内容的提问来源于stack exchange,提问作者Harry

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 08:13:35