PrestaShop Stripe模块报错:需创建正式环境客户求指导
PrestaShop Stripe模块「resource_missing」错误解决及正式环境客户创建方法
错误原因
你遇到的错误是因为混用了Stripe测试环境与正式环境的资源:当前使用正式环境的API密钥,但调用的客户ID(cus_XXXXXXXXXXXXX)仅存在于测试环境中,Stripe两个环境的数据完全隔离,因此无法找到对应资源。
操作步骤
1. 修正Stripe模块环境配置
- 登录PrestaShop后台,进入Stripe支付模块的设置页
- 确认API密钥:替换为Stripe后台获取的正式环境密钥(Live Publishable Key、Live Secret Key),禁止混用测试密钥
- 切换模块环境模式为「Live(正式)」,确保与密钥环境匹配
2. 创建正式环境Stripe客户
有两种可行方式:
方式一:Stripe仪表盘手动创建
- 登录Stripe后台,切换到右上角的正式环境(Live Mode)
- 左侧菜单进入「Customers」页面,点击「+ New customer」
- 填写客户信息(邮箱、姓名为可选项),保存后即可获得正式环境的客户ID(格式为
cus_开头)
方式二:PrestaShop自动生成(推荐)
- 确保模块配置正确后,引导用户完成一次前台下单流程:
用户选择Stripe支付提交订单时,模块会自动调用Stripe API,在正式环境为该用户创建对应的客户记录,无需手动干预,系统会自动关联用户与客户ID
3. 清理旧测试数据(可选)
- 若PrestaShop数据库中留存了测试环境的客户ID,可通过后台用户管理找到对应用户,清除其关联的Stripe客户ID
- 或通过数据库工具(如phpMyAdmin),查找存储支付关联信息的表(通常命名类似
ps_stripe_customer),删除测试环境的cus_开头记录
4. 验证测试
- 使用正式环境支付方式完成一次小额下单测试(测试卡仅适用于Stripe测试模式,正式模式需用真实支付工具,测试后可手动退款)
- 检查Stripe正式环境的「Customers」列表,确认新客户已创建,且订单支付流程无报错
内容的提问来源于stack exchange,提问作者Adam Dulson
相关产品推荐
相关产品推荐

