1.获取预支付订单:商户向微信支付系统发起请求,生成预支付订单。请求中需要包括商户号、appid、商品描述、订单金额、通知地址等参数,以及签名信息。微信支付系统会根据请求参数进行验证和处理,生成预支付订单并返回给商户。
2.调起支付:商户收到预支付订单后,根据微信支付要求,使用JSAPI、NATIVE、APP等方式调起微信支付。调起支付需要包括预支付订单ID、appid、key等参数。微信支付系统会验证预支付订单的有效性,如果通过验证则会展示支付页面供用户完成支付。
3.支付结果通知:支付完成后,微信支付系统会通过异步通知的方式将支付结果返回给商户。商户需要在通知处理程序中验证支付结果的有效性,包括检查订单状态、支付金额、签名等信息。如果支付结果验证通过,则将订单状态更新为支付成功。
4.查询订单状态:商户可以通过调用微信支付查询订单API,查询订单的最新状态。查询订单需要提供商户号、appid、商户订单号等参数。微信支付系统会根据请求参数查询订单状态,并返回查询结果。
5.退款处理:商户可以通过调用微信支付退款API,对已经支付的订单进行退款操作。退款需要提供商户号、appid、商户订单号、退款金额等参数。微信支付系统会根据请求参数进行验证和处理,生成退款订单并返回给商户。商户需要在退款通知处理程序中验证退款结果的有效性,并将订单状态更新为已退款