欢迎光临,了解微信小程序开发,就上易用通!

微信小程序支付(微信支付)文档(2016.11.25版本)

发布:2018-01-30 11:56浏览: 来源:网络 作者:cola

支付模式

1、

刷卡支付

刷卡支付是用户展示微信钱包内的“刷卡条码/二维码”给商户系统扫描后直接完成支付的模式。主要应用线下面对面收银的场景。

2、

扫码支付

扫码支付是商户系统按微信支付协议生成支付二维码,用户再用微信“扫一扫”完成支付的模式。该模式适用于PC网站支付、实体店单品或订单支付、媒体广告支付等场景。

3、

公众号支付

公众号支付是用户在微信中打开商户的H5页面,商户在H5页面通过调用微信支付提供的JSAPI接口调起微信支付模块完成支付。应用场景有:

  1. ◆ 用户在微信公众账号内进入商家公众号,打开某个主页面,完成支付
  2. ◆ 用户的好友在朋友圈、聊天窗口等分享商家页面连接,用户点击链接打开商家页面,完成支付
  3. ◆ 将商户页面转换成二维码,用户扫描二维码后在微信浏览器中打开页面后完成支付

4、

APP支付

APP支付又称移动端支付,是商户通过在移动端应用APP中集成开放SDK调起微信支付模块完成支付的模式。

5、

小程序支付

小程序支付,是商户在微信小程序平台内实现支付功能。

 

名词解释

1、

微信公众平台

微信公众平台是微信公众账号申请入口和管理后台。商户可以在公众平台提交基本资料、业务资料、财务资料申请开通微信支付功能。

平台入口:https://mp.weixin.qq.com

2、

微信开放平台

微信开放平台是商户APP接入微信支付开放接口的申请入口,通过此平台可申请微信APP支付。

平台入口:https://open.weixin.qq.com。

3、

微信商户平台

微信商户平台是微信支付相关的商户功能集合,包括参数配置、支付数据查询与统计、在线退款、代金券或立减优惠运营等功能。

平台入口:https://pay.weixin.qq.com。

4、

微信企业号

微信企业号是企业号的申请入口和管理后台,商户可以在企业号提交基本资料、业务资料、财务资料申请开通微信支付功能。

企业号入口:https://qy.weixin.qq.com。

5、

微信支付系统

微信支付系统是指完成微信支付流程中涉及的API接口、后台业务处理系统、账务系统、回调通知等系统的总称。

6、

微信小程序

微信小程序是微信提供给商户实现APP的一种轻应用,开发起来简单,易用。

入口:https://mp.weixin.qq.com/debug/wxadoc/dev/

7、

商户后台系统

商户后台系统是商户后台处理业务系统的总称,例如:商户网站、收银系统、进销存系统、发货系统、客服系统等。

8、

商户证书

商户证书是微信提供的二进制文件,商户系统发起与微信支付后台服务器通信请求的时候,作为微信支付后台识别商户真实身份的凭据。

9、

签名

商户后台和微信支付后台根据相同的密钥和算法生成一个结果,用于校验双方身份合法性。签名的算法由微信支付制定并公开,常用的签名方式有:MD5、SHA1、SHA256、HMAC等。

10、

JSAPI网页支付

JSAPI网页支付即前文说的公众号支付,可在微信公众号、朋友圈、聊天会话中点击页面链接,或者用微信“扫一扫”扫描页面地址二维码在微信中打开商户HTML5页面,在页面内下单完成支付。

11、

支付密码

支付密码是用户开通微信支付时单独设置的密码,用于确认支付完成交易授权。该密码与微信登录密码不同。

12、

Openid

用户在小程序内的身份标识,不同小程序拥有不同的openid。商户后台系统通过登录授权、支付通知、查询订单等API可获取到用户的openid。主要用途是判断同一个用。可调用接口获取openid。

支付账户

    小程序认证以后,可以在小程序后台,微信支付菜单栏,申请微信支付。

微信小程序支付(微信支付)文档(2016.11.25版本)(图1)

填写企业信息和对公账户,微信支付会打一笔随机金额到对公账户,输入金额完成验证后,在线签署迁移,即完成了微信支付的申请流程.。 微信支付申请完,会发送微信支付商户号,商户平台用户名密码等信息到注册者邮箱。此邮件包含开发时需要使用的支付账户信息,见图3.1所示。

 

微信小程序支付(微信支付)文档(2016.11.25版本)(图2)

图3.1 微信审核通过邮件模板

邮件中的账户参数与接口API参数对应关系见表格3.1:

表3.1 账户参数说明

邮件中参数 API参数名 详细说明
APPID appid appid是微信小程序后台APP的唯一标识,在小程序后台申请小程序账号后,微信会自动分配对应的appid,用于标识该应用。可在小程序-->设置-->开发设置中查看。
微信支付商户号 mch_id 商户申请微信支付后,由微信支付分配的商户收款账号。
API密钥 key 交易过程生成签名的密钥,仅保留在商户系统和微信支付后台,不会在网络中传播。商户妥善保管该Key,切勿在网络中传输,不能在其他客户端中存储,保证key不会被泄漏。商户可根据邮件提示登录微信商户平台进行设置。也可按一下路径设置:微信商户平台(pay.weixin.qq.com)-->账户设置-->API安全-->密钥设置
Appsecret secret AppSecret是APPID对应的接口密码,用于获取接口调用凭证时使用。
 

协议规则

商户接入微信支付,调用API必须遵循以下规则:

表4.1 接口规则

传输方式 为保证交易安全性,采用HTTPS传输
提交方式 采用POST方法提交
数据格式 提交和返回数据都为XML格式,根节点名为xml
字符编码 统一采用UTF-8字符编码
签名算法 MD5,后续会兼容SHA1、SHA256、HMAC等。
签名要求 请求和接收数据均需要校验签名,详细方法请参考安全规范-签名算法
证书要求 调用申请退款、撤销订单接口需要商户证书
判断逻辑 先判断协议字段返回,再判断业务返回,最后判断交易状态

参数规定

1、body字段格式要求

 

 

使用场景 支付模式 商品字段规则 样例 备注
微信小程序 小程序支付 商家名称-销售商品类目 罗辑思维-图书 线上电商,商家名称必须为实际销售商品的商家

2、

交易金额

交易金额默认为人民币交易,接口中参数支付金额单位为【分】,参数值不能带小数。对账单中的交易金额单位为【元】。

外币交易的支付金额精确到币种的最小单位,参数值不能带小数点。

3、

交易类型

JSAPI--小程序支付统一下单接口trade_type的传参可参考这里

4、

货币类型

货币类型的取值列表:

CNY:人民币

5、

时间

标准北京时间,时区为东八区;如果商户的系统时间为非标准北京时间。参数值必须根据商户系统所在时区先换算成标准北京时间, 例如商户所在地为0时区的伦敦,当地时间为2014年11月11日0时0分0秒,换算成北京时间为2014年11月11日8时0分0秒。

6、

时间戳

标准北京时间,时区为东八区,自1970年1月1日 0点0分0秒以来的秒数。注意:部分系统取到的值为毫秒级,需要转换成秒(10位数字)。

7、

商户订单号

商户支付的订单号由商户自定义生成,微信支付要求商户订单号保持唯一性(建议根据当前系统时间加随机序列来生成订单号)。重新发起一笔支付要使用原订单号,避免重复支付;已支付过或已调用关单、撤销(请见后文的API列表)的订单号不能重新发起支付。

8、

银行类型

字符型银行编码 银行名称
ICBC_DEBIT 工商银行(借记卡)
ICBC_CREDIT 工商银行(信用卡)
ABC_DEBIT 农业银行(借记卡)
ABC_CREDIT 农业银行(信用卡)
PSBC_DEBIT 邮政储蓄银行(借记卡)
PSBC_CREDIT 邮政储蓄银行(信用卡)
CCB_DEBIT 建设银行(借记卡)
CCB_CREDIT 建设银行(信用卡)
CMB_DEBIT 招商银行(借记卡)
CMB_CREDIT 招商银行(信用卡)
BOC_DEBIT 中国银行(借记卡)
BOC_CREDIT 中国银行(信用卡)
COMM_DEBIT 交通银行(借记卡)
SPDB_DEBIT 浦发银行(借记卡)
SPDB_CREDIT 浦发银行(信用卡)
GDB_DEBIT 广发银行(借记卡)
GDB_CREDIT 广发银行(信用卡)
CMBC_DEBIT 民生银行(借记卡)
CMBC_CREDIT 民生银行(信用卡)
PAB_DEBIT 平安银行(借记卡)
PAB_CREDIT 平安银行(信用卡)
CEB_DEBIT 光大银行(借记卡)
CEB_CREDIT 光大银行(信用卡)
CIB_DEBIT 兴业银行(借记卡)
CIB_CREDIT 兴业银行(信用卡)
CITIC_DEBIT 中信银行(借记卡)
CITIC_CREDIT 中信银行(信用卡)
BOSH_DEBIT 上海银行(借记卡)
BOSH_CREDIT 上海银行(信用卡)
CRB_DEBIT 华润银行(借记卡)
HZB_DEBIT 杭州银行(借记卡)
HZB_CREDIT 杭州银行(信用卡)
BSB_DEBIT 包商银行(借记卡)
BSB_CREDIT 包商银行(信用卡)
CQB_DEBIT 重庆银行(借记卡)
SDEB_DEBIT 顺德农商行(借记卡)
SZRCB_DEBIT 深圳农商银行(借记卡)
HRBB_DEBIT 哈尔滨银行(借记卡)
BOCD_DEBIT 成都银行(借记卡)
GDNYB_DEBIT 南粤银行(借记卡)
GDNYB_CREDIT 南粤银行(信用卡)
GZCB_DEBIT 广州银行(借记卡)
GZCB_CREDIT 广州银行(信用卡)
JSB_DEBIT 江苏银行(借记卡)
JSB_CREDIT 江苏银行(信用卡)
NBCB_DEBIT 宁波银行(借记卡)
NBCB_CREDIT 宁波银行(信用卡)
NJCB_DEBIT 南京银行(借记卡)
JZB_DEBIT 晋中银行(借记卡)
KRCB_DEBIT 昆山农商(借记卡)
LJB_DEBIT 龙江银行(借记卡)
LNNX_DEBIT 辽宁农信(借记卡)
LZB_DEBIT 兰州银行(借记卡)
WRCB_DEBIT 无锡农商(借记卡)
ZYB_DEBIT 中原银行(借记卡)
ZJRCUB_DEBIT 浙江农信(借记卡)
WZB_DEBIT 温州银行(借记卡)
XAB_DEBIT 西安银行(借记卡)
JXNXB_DEBIT 江西农信(借记卡)
NCB_DEBIT 宁波通商银行(借记卡)
NYCCB_DEBIT 南阳村镇银行(借记卡)
NMGNX_DEBIT 内蒙古农信(借记卡)
SXXH_DEBIT 陕西信合(借记卡)
SRCB_CREDIT 上海农商银行(信用卡)
SJB_DEBIT 盛京银行(借记卡)
SDRCU_DEBIT 山东农信(借记卡)
SRCB_DEBIT 上海农商银行(借记卡)
SCNX_DEBIT 四川农信(借记卡)
QLB_DEBIT 齐鲁银行(借记卡)
QDCCB_DEBIT 青岛银行(借记卡)
PZHCCB_DEBIT 攀枝花银行(借记卡)
ZJTLCB_DEBIT 浙江泰隆银行(借记卡)
TJBHB_DEBIT





免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。