微信小程序下单且已产生预支付订单(JSAPI),此时使用NATIVE支付方式支付前,
通过取消之前的预订单,然后产生新订单操作,取消订单时(调用api https://api.mch.weixin.qq.com/secapi/pay/reverse ),
请求参数如下:
<xml>
<appid>---</appid>
<mch_id>---</mch_id>
<transaction_id>wx022154055463064d0f4c0f811aa4c20000</transaction_id>
<nonce_str>--</nonce_str>
<sign>--</sign>
</xml>
此时返回数据错误信息:
Error: socket hang up
at connResetException (internal/errors.js:607:14)
at TLSSocket.socketOnEnd (_http_client.js:493:23)
at TLSSocket.emit (events.js:327:22)
at TLSSocket.EventEmitter.emit (domain.js:467:12)
at endReadableNT (internal/streams/readable.js:1327:12)
at processTicksAndRejections (internal/process/task_queues.js:80:21) {
code: 'ECONNRESET',
response: undefined
}
请参考这个:
以下情况需要调用关单接口:商户订单支付失败需要生成新单号重新发起支付,要对原订单号调用关单,避免重复支付;系统下单后,用户支付超时,系统退出不再受理,避免用户继续,请调用关单接口。
注意:订单生成后不能马上调用关单接口,最短调用时间间隔为5分钟。
不是下单后直接调用关单
你好,
1.商户订单支付失败需要生成新单号重新发起支付,要对原订单号调用关单
这个操作顺序是否固定的,必须先用新的单号产生新的预支付单,然后调用关单才能成功,
目前我们是先关闭订单,用原单号生成新预支付单的,但关单不能成功。
2.系统下单后,用户支付超时,系统退出不再受理,避免用户继续,请调用关单接口。
这里支付超时是指预支付单的超时时间生效了么?预订单超时的时候必须关闭订单,才能再创建新订单么?目前我们如果超时了,重新下预订单是可以生成,原预订单不关闭是否有影响?
3.我们现在调用关闭订单,经过多次尝试,任时点调用都没成功(https://api.mch.weixin.qq.com/secapi/pay/reverse),均会报出以上错误。
还麻烦进一步解答,谢谢🙏