Login expired. Please log in again.

Feedback

0/300

Feedback

Submitted successfully

ok

Feedback

Network exception, please try again later

ok

开发指引


验证密码规则

支付金额>1000元的交易需要验证用户支付密码;

用户账号每天最多有5笔交易可以免密,超过后需要验证密码;

微信支付后台判断用户支付行为有异常情况,符合免密规则的交易也会要求验证密码。


注:基于一定的风控策略,存在随时需要验密的可能性。

刷卡支付时序图(免密)

步骤1:收银员在商户收银台生成支付订单,向用户展示支付金额;


步骤2:用户打开微信客户端,点击“我的钱包”,选择“刷卡”,进入条码界面;


步骤3:使用扫码设备读取用户手机屏幕上的条码;


步骤4:扫码设备将读取的信息上传给门店收银台;


步骤5:门店收银台得到支付信息后,向商户收银后台发起支付请求。


步骤6:商户后台对门店收银台的支付请求进行处理,生成签名后调用【提交付款码支付API】向微信支付系统发起支付请求。


步骤7:微信支付系统得到商户侧的支付请求之后会对请求进行验证,验证通过之后会对请求数据进行处理,最后将处理后的支付结果返回给商户收银后台。如果支付成功,微信支付系统会将支付结果返回给商户,同时把支付结果通知给用户(以短信、微信消息的形式通知)。


步骤8:商户收银后台对得到的支付结果进行签名验证和处理,再将支付结果返回给门店收银台。


步骤9:收银员看到门店收银台的支付结果后给用户发货。


刷卡支付时序图(验密)

场景交互与免密模式相同,不同的是在商户调用【提交付款码支付API】发起支付请求之后,微信支付后台提示用户输入密码确认支付,接口同步返回USERPAYING状态,商户系统再轮询调用查询订单接口来确认当前用户是否已经支付成功。


由于在商户收银后台向微信支付系统发起支付请求之前的流程是完全一样的,所以这里只介绍商户发起支付请求之后的逻辑。


步骤1:商户门店生成订单后,收银台向后台系统发起支付请求。


步骤2:后台调用微信支付【提交付款码支付API】生成支付交易。


步骤3:微信支付系统对商户请求进行验证,验证通过后判断当前用户需要输入密码。


步骤4:微信支付系统返回USERPAYING状态,商户后台系统将应答结果返回给商户门店收银台。


步骤5:微信支付系统通知用户微信客户端输入密码。


步骤6:用户得到输入密码提示后,确认支付并输入密码。


步骤7:完成密码输入,提交微信支付。


步骤8:微信客户端在用户完成支付后提示微信支付后台系统返回的支付结果,而且微信支付系统会通过短信、微信消息给用户发送支付结果提醒。


步骤9:商户收银台得到USERPAYING状态后,经过商户后台系统调用【查询订单API】查询实际支付结果。


步骤10:如果支付结果仍为USERPAYING,则每隔5秒循环调用【查询订单API】判断实际支付结果,如果用户取消支付或累计30秒用户都未支付,商户收银台退出查询流程后继续调用【撤销订单API】撤销支付交易。

异常处理

当遇到支付异常,请按如下说明处理

(1)用户微信端弹出系统错误提示框,用户可在交易列表查看交易情况,如果未找到订单,需要商户重新发起支付交易;如果订单显示成功支付,商户收银系统再次调用【查询订单API】查询实际支付结果;

(2)用户微信端弹出支付失败提示,例如:余额不足,信用卡失效。需要重新发起支付;

(3)当交易超时或支付交易失败,商户收银系统必须调用【撤销订单API】,撤销此交易;

(4)由于银行系统异常、用户余额不足、不支持用户卡种等原因使当前支付交易失败,商户收银系统应该把错误提示明确展示给收银员;

(5)根据返回的错误码,判断是否需要撤销交易,具体详见API返回错误码列表。

版本说明

关闭
V1.0
2020年1月08日
1. 小程序支付产品介绍上线

About  WeChat  Pay

Powered By Tencent & Tenpay Copyright©

2005-2024 Tenpay All Rights Reserved.

Contact Us
Wechat Pay Global

WeChat Pay Global