微信公众号支付用于用户在微信内使用自己的网页进行支付
一、一般的流程为:
(1)、商户下发图文消息或者通过自定义菜单吸引用户点击进入商户网页。
(2)、进入商户网页,用户选择购买,完成选购流程。
(3)、调起微信支付控件,用户开始输入支付密码。
(4)、密码验证通过,支付成功。商户后台得到支付成功的通知。
(5)、返回商户页面,显示购买成功。该页面由商户自定义。
(6)、微信支付公众号下发支付凭证。
(7)、商户公众号下发消息,提示发货成功。该步骤可选。或是商户app/网站发送消息 提示购买成功。
二、交互细节:
以下是支付场景的交互细节,请认真阅读,设计商户页面的逻辑:
(1)用户打开商户网页选购商品,发起支付,在网页通过JavaScript调用getBrandWCPayRequest接口,发起微信支付请求,用户进入支付流程。
(2)用户成功支付点击完成按钮后,商户的前端会收到JavaScript的返回值。商户可直接跳转到支付成功的静态页面进行展示。
(3)商户后台收到来自微信开放平台的支付成功回调通知,标志该笔订单支付成功。
注:(2)和(3)的触发不保证遵循严格的时序。JS API返回值作为触发商户网页跳转的标志,但商户后台应该只在收到微信后台的支付成功回调通知后,才做真正的支付成功的处理。
三、开发配置
(1)设置支付目录
请确保实际支付时的请求目录与后台配置的目录一致,否则将无法成功唤起微信支付。
在微信商户平台(pay.weixin.qq.com)设置您的公众号支付支付目录,设置路径:商户平台-->产品中心-->开发配置。
公众号支付在请求支付的时候会校验请求来源是否有在商户平台做了配置,所以必须确保支付目录已经正确的被配置,否则将验证失败