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

使用Stripe创建Source时出现Invalid hash错误求助

解决Stripe IDEAL支付创建Source时的"Invalid hash"错误

嘿,我之前也碰到过Stripe IDEAL支付的这个Invalid hash错误,结合你说的是添加某行代码后才出现的情况,大概率是参数构造或者签名验证环节出了问题,给你几个实用的排查和解决方向:

  • 优先排查新增代码的影响
    先把你添加的那行代码注释掉,看看错误会不会消失——这能快速确认是不是那行代码搞的鬼。如果是的话,仔细检查那行代码的逻辑:是不是修改了Source的必填参数?比如误改了currency(IDEAL只支持欧元eur)、amount有没有用对最小单位(比如10欧元要传1000);或者是不是手动修改了请求头、签名相关的配置?Stripe PHP库会自动处理签名,手动干预很容易出错。

  • 核对参数的完整性和格式
    确认创建IDEAL Source的所有必填参数都正确:type必须是ideal,amount是整数类型的最小单位金额,currency为eur,owner里的email、name格式要合规,不能有特殊字符或者空值。如果新增代码是加了metadata或者其他可选参数,也要确认这些参数的格式符合Stripe的要求(比如metadata的键值对不能太长)。

  • 检查API密钥和签名配置
    确保你的Stripe API密钥(测试环境用sk_test_开头,生产用sk_live_)没有被新增代码意外修改。另外,如果你开启了Webhook签名验证,也要确认签名密钥配置正确,但这里是创建Source时的错误,更多是请求本身的签名问题,库会自动处理,除非你手动改了ApiRequestor相关的逻辑。

  • 考虑升级Stripe PHP库版本
    你用的是stripe-php-4.13.0,这个版本确实比较旧了,Stripe的API规范和签名逻辑一直在更新,旧版本可能和最新的IDEAL支付流程不兼容。可以用Composer升级到最新稳定版试试:

    composer update stripe/stripe-php
    

如果还是解决不了,把你添加的那行代码和创建Source的完整代码片段贴出来,能更精准地定位问题。

你遇到的错误原文:
Fatal error: Uncaught exception 'Stripe\Error\InvalidRequest' with message 'Invalid hash' in /home/ubuntu/workspace/ideal/stripe-php-4.13.0/lib/ApiRequestor.php:110 from API request 'req_S1FAI6czFIggdC' in /home/ubuntu/workspace/ideal/stripe-php-4.13.0/lib/ApiRequestor.php on line 110

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:01:19