微信支付V3 yansongda/pay 踩坑记录

背景

  1. 新增商户号转账到零钱功能
  2. 使用laravel 8框架

开发

  1. 引入包

composer require yansongda/pay:~3.2.0 -vvv
文档快速链接:yansongda支付文档

  1. 加入微信配置,注意点来了,踩好多坑
    2.1 报错 Parse [mch_public_cert_path] Serial Number Error 是mch_secret_cert,mch_public_cert_path配置错误
    2.2 报错 Get Wechat Public Cert Error 是mch_secret_key配置错误

// 必填-商户秘钥  重要:必须是APIv3密钥
'mch_secret_key' => env('WECHAT_PAYMENT_KEY', 'SADK13dsf4234d23123amnbLKG5DGFKJ'),
// 必填-商户私钥 字符串或路径   是apiclient_key.pem这个证书文件
'mch_secret_cert' => env('WECHAT_PAYMENT_CERT_PATH', 'path/to/cert/apiclient_key.pem'),
// 必填-商户公钥证书路径  是apiclient_cert.pem 证书文件
'mch_public_cert_path' => env('WECHAT_PAYMENT_KEY_PATH', 'path/to/cert/apiclient_cert.pem'),
// 选填-微信公钥证书路径, optional,强烈建议 php-fpm 模式下配置此参数
'wechat_public_cert_path' => [
				//前面是证书序列号,登录商户平台【API安全】->【API证书】->【查看证书】,可查看商户API证书序列号
				//后面是通过前面的配置生成的文件 参考:http://www.liziyu.com/archives/309/
                '49498A3B56E68C55196829D561546' => '/wechatpay_74132747157110D2EA257117B091E5E5757.pem',
    ],
  1. laravel 使用配置
#正确
Pay::config(config('wechat_config')
#不需要写完整的像这样
Pay::config(config('wechat_config.wechat')
  1. 传参错误 无法将 JSON 输入源“/body/out_batch_no”映射到目标字段“商家批次单号”中,此字段需要一个 string 类型的 Json 值
    订单编号都必须是字符串。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值