微信支付开发总结

2019-04-15   4 分钟阅读

总结了微信支付的支付产品的定义、应用场景及注意事项(如何调起支付及可能出现的问题),并对支付方式进行了对比。

付款码支付

定义: 用户打开微信钱包-付款码的界面,商户扫码后提交完成支付。
应用场景: 线下面对面收银。
注意事项: 商户获取到收款码,调用【付款码支付】接口发起支付,微信会同步返回支付结果,如果不为成功状态,商户需要轮询调用【查询订单】接口。基于一定的风控策略,存在随时需要验密的可能性。

Native支付

定义: 用户打开”微信扫一扫“,扫描商户的二维码后完成支付,也叫扫码支付。
应用场景: PC网站支付、实体店单品或订单支付、媒体广告支付。
注意事项: 用户打开的是微信收银台。调用【统一下单】接口,将返回的链接生成二维码,用户扫码后输入密码完成支付。

JSAPI支付

定义: 用户通过微信扫码、关注公众号等方式进入商家H5页面,并在微信内调用JSSDK完成支付。
应用场景: 商家公众号配置的页面、分享的商家页面或者商家页面生成的二维码,用户扫描打开的页面发起支付。
注意事项: WeixinJSBridge内置对象里的方法发起支付,只在微信浏览器内有效,支付成功后前端有回调,可以在这跳转到商家的完成页。

APP支付

定义: APP支付又称移动端支付,在商户APP中集成微信SDK,用户点击后跳转到微信内完成支付。
应用场景: 商户开发的APP应用。
注意事项: 开发者需要下载微信支付sdk。

H5支付

定义: 用户在微信以外的手机浏览器请求微信支付的场景唤起微信支付。
应用场景: 微信浏览器以外的H5页面发起的支付。
注意事项: 用户去点击按钮触发查单操作。调用【统一下单】接口,成功会返回支付跳转链接,自动拉起微信支付收银台的中间页面。

小程序支付

定义: 小程序支付是专门被定义使用在小程序中的支付产品。
应用场景: 只能在小程序中使用。
注意事项: 目前在小程序中能且只能使用小程序支付的方式来唤起微信支付。使用小程序接口【wx.requestPayment】调起支付。

刷脸支付

定义: 无需掏出手机,刷脸完成支付。
应用场景: 适用线下多种场景。
注意事项: 微信支付提供两种开放模式供设备接入集成:1. SDK开放模式(微信提供SDK,需要自行开发完整APP),2. 青蛙开放模式(微信提供完整APP,类似扫码枪功能,无需开发, 需要配合收银机使用)。刷脸得到用户的付款码,走的是【付款码支付】的流程,本质上没有多大区别。

微信支付方式对比

  1. APP支付由app内sdk调起,不做对比。
  2. 刷脸支付和付款码支付基本一致。
付款码支付 Native支付 H5支付 JSAPI支付 小程序支付
统一下单 单独的支付接口 调用统一下单接口
下单是否需要openid 不需要,支付成功后返回openid 需要先获取到openid,再下单
调起方式 自动扣款 微信收银台 浏览器跳转到微信收银台 WeixinJSBridge对象方法 小程序接口
调起支付页面协议 HTTPS HTTPS HTTPS HTTP或HTTPS HTTPS
支付目录
授权域名
回调函数 主动查询 主动查询 无,用户确认 complete、fail、success回调函数

参考资料:微信支付开发文档

标签:

更新时间:

留下评论

科学上网后可评论