helei112g / payment

Payment是php版本的支付聚合第三方sdk,集成了微信支付、支付宝支付、招商一网通支付。提供统一的调用接口,方便快速接入各种支付、查询、退款、转账能力。服务端接入支付功能,方便、快捷。
MIT License
2.35k stars 678 forks source link

微信支付回调验签失败 #211

Closed cyfx closed 4 years ago

cyfx commented 4 years ago

最近发现我们生产的项目经常有用户支付成功后,但是没有执行回调,经验证是微信支付回调返回的xml,有部分包含sign_type字段,但是在验签的时候,payment会去掉sign_type,导致验签失败。 旧版本的4.,新版本的5.都会出现。 如下是微信返回的xml,脱敏后的数据, <xml><appid><![CDATA[wx48dd*****3da6]]><\/appid>\n<attach><![CDATA[123]]><\/attach>\n<bank_type><![CDATA[OTHERS]]><\/bank_type>\n<cash_fee><![CDATA[1000]]><\/cash_fee>\n<device_info><![CDATA[WEB]]><\/device_info>\n<fee_type><![CDATA[CNY]]><\/fee_type>\n<is_subscribe><![CDATA[N]]><\/is_subscribe>\n<mch_id><![CDATA[150****371]]><\/mch_id>\n<nonce_str><![CDATA[bdmtmfy9f891****cf6q3opfzu]]><\/nonce_str>\n<openid><![CDATA[ouGhb1S*****vkE]]><\/openid>\n<out_trade_no><![CDATA[20041112213431109]]><\/out_trade_no>\n<result_code><![CDATA[SUCCESS]]><\/result_code>\n<return_code><![CDATA[SUCCESS]]><\/return_code>\n<sign><![CDATA[3E57FF0A97AB76E7E82583267E782A06]]><\/sign>\n<sign_type><![CDATA[MD5]]><\/sign_type>\n<time_end><![CDATA[20200411122145]]><\/time_end>\n<total_fee>1000<\/total_fee>\n<trade_type><![CDATA[APP]]><\/trade_type>\n<transaction_id><![CDATA[42000*****11230]]><\/transaction_id>\n<\/xml>

helei112g commented 4 years ago

感谢,已经修复!