文档:
https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=23_1&index=1
微信 sdk 我们项目里,使用的是 laravel-wechat(easywechat)
沙箱环境的相关配置,都已经配置好了,我们只需要在配置文件中,将 sandbox 设置为 true 即可。
但是,在调试时,出现一个非常奇葩的问题:
沙箱支付金额(xxx)无效,请检查需要验收的case
下单等相关操作,一直返回 FAIL。在网上找了半天答案,总算搞清楚了,下面笔记下:
错误原因:
微信沙箱环境,有个 "验收测试用例"(在上面的文档链接的最底下),下面引用文档内容:
『
请根据您需要开通的功能来选择相应的验收用例进行测试:
◆ 付款码支付验收用例
◆ Native支付验收用例
◆ JSAPI支付验收用例
◆ 免充值券验收用例
』
我们需要根据自己的功能,查看不同的用例。每个用例,都有专门的 『下单金额』(注意:金额是固定死的),我们只能按照这个金额,来测试!!!
在代码中,我们可以通过以下配置来专门为 '沙箱环境' 来指定下单金额:
if(config('wechat.default.payment.sandbox')){
$unified_order['total_fee'] = 1.01;
}
吐槽啊,相当坑。。。