<xml>
<appid><![CDATA[有值]]></appid>
<bank_type><![CDATA[CCB_DEBIT]]></bank_type>
<cash_fee><![CDATA[1]]></cash_fee>
<fee_type><![CDATA[CNY]]></fee_type>
<is_subscribe><![CDATA[N]]></is_subscribe>
<mch_id><![CDATA[1592757701]]></mch_id>
<nonce_str><![CDATA[456P5EdolBlCjaQ0UDV2hBdeIKlDbis3]]></nonce_str>
<openid><![CDATA[oWkFq5H1drKb19WPoMM63a3Sg06o]]></openid>
<out_trade_no><![CDATA[D2005160003]]></out_trade_no>
<result_code><![CDATA[SUCCESS]]></result_code>
<return_code><![CDATA[SUCCESS]]></return_code>
<sign><![CDATA[08978C0610677CF6294FFCD3F4A2A3D9]]></sign>
<time_end><![CDATA[20200516113557]]></time_end>
<total_fee>1</total_fee>
<trade_type><![CDATA[JSAPI]]></trade_type>
<transaction_id><![CDATA[4200000549202005164223547810]]></transaction_id>
</xml>
回调收到的xml
1、同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。
2、后台通知交互时,如果微信收到商户的应答不符合规范或超时,微信会判定本次通知失败,重新发送通知,直到成功为止(在通知一直不成功的情况下,微信总共会发起多次通知,通知频率为15s/15s/30s/3m/10m/20m/30m/30m/30m/60m/3h/3h/3h/6h/6h - 总计 24h4m),但微信不保证通知最终一定能成功。
确保你这边是严格按照微信文档进行返回。只要是正常的返回,就不会有重复回调。
注意:1、同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。
2、后台通知交互时,如果微信收到商户的应答不符合规范或超时,微信会判定本次通知失败,重新发送通知,直到成功为止(在通知一直不成功的情况下,微信总共会发起多次通知,通知频率为15s/15s/30s/3m/10m/20m/30m/30m/30m/60m/3h/3h/3h/6h/6h - 总计 24h4m),但微信不保证通知最终一定能成功。
所以你要按下面的方式返回回调成功的通知
【微信支付】微信小程序支付开发者文档(拉到最底部)
https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=9_7&index=8
你确定返回格式是对的。
<xml>
<return_code><![CDATA[SUCCESS]]></return_code>
<return_msg><![CDATA[OK]]></return_msg>
</xml>