首先在调用wx.requestVirtualPayment前,我这边的小程序服务端有自己的订单管理,生成outTradeNo,给signData
通过wx.requestVirtualPayment支付成功后,我通过文档了解到的有以下两种配置支付成功和退款消息推送的方法:
1、小程序开发管理--消息推送:https://developers.weixin.qq.com/miniprogram/dev/framework/server-ability/message-push.html;
既然这两种方法都可行,那不论是小程序消息推送配置的url,还是云托管配置的云函数,它两的请求参数都是大差不差的(ToUserName、FromUserName、CreateTime、MsgType、Event、OpenId等参数)
现在有以下问题:
1、假如我使用的是小程序开发管理--消息推送,那我自己服务器开发一个接口(url),然后接收参数(ToUserName、FromUserName、CreateTime、MsgType、Event、OpenId等参数),再根据Event是xpay_goods_deliver_notify还是xpay_refund_notify,然后去更新我们自己的订单状态?(其实就和wx.requestPayment中,在微信支付系统生成预付单时配置的notify_url一个道理)
2、假如我使用的是云托管,那在云函数处理完Event后,我们这边是不是需要自己搞个定时任务,通过query_order查询微信虚拟支付订单的状态,然后更新我们自己的订单状态?

1、是的
2、云开发也是可以接收发货通知、退款通知的。
建议是加一个定时query_order查询订单状态,用来兜底
有自己的服务器肯定用第一种方案啊