支付中心移动端开发

1.0 钱包小程序

支付钱包需要服务端提供的接口

1.1 钱包设置

  1. 开通协议;
  2. 判断钱包是否开通接口;
  3. 开通电子钱包(上传支付密码、用户信息、设备信息);
  4. 设置免密支付;
  5. 支付平台短信验证;
  6. 第三方支付开通、关闭、查询;
  7. 支付园区查询、切换;
  8. 切换默认支付类型;
  9. 交易明细查询;
  10. 交易详情查询;
  11. 修改、找回支付密码;
  12. 超过免密额度,需要校验支付密码;
  13. 重复支付同商家的订单进行安全校验;
  14. 超过最大额度,不允许支付。

1.2 钱包支付

  1. 付款码获取(定时刷新);
  2. 收款码获取(个人收款码产品说不做);
  3. 充值付款接口(支付宝、微信);
  4. 转账接口(可转账人员查询、历史转账记录);
  5. 扫码付款接口。

2.0 APP支付组件

APP支付组件需要服务端提供的接口

  1. 获取当前支付方式(微信、支付宝、电子钱包);
  2. 支付密码校验;
  3. 支付订单接口。

3.0 支付功能

存储的 key:使用园区 ID + (UUID 、指纹key、免密支付key

唯一值 UUID:手机生成,和指纹开关、免密支付进行绑定 ;

设备信息:设备型号、客户端平台

3.1 指纹支付

  1. 开始支付,选择电子钱包支付;
  2. 确认支付,优先使用指纹;
  3. 指纹校验成功,将存储的唯一值、设备信息发送给服务端;
  4. 服务端是用唯一值和设备信息获取支付密码;
  5. 使用支付密码支付成功;
  6. 订单支付完成。

3.2 付款码支付

  • 建议使用 MQTT 实现订单支付消息的订阅和发布(或者心跳刷新);
  • 建议每天免密付款最高额度进行限制;
  • 服务端需要存储付款码,校验是否有效(一个付款码只能完成一个订单)。
  1. 打开付款页面,获取付款码;
  2. 开启监听服务端支付回调;
  3. 使用付款码生成付款二维码和条形码;
  4. 每过60秒自动刷新付款码;
  5. 是否需要安全校验(支付密码、指纹),校验成功,开始支付;
  6. 接收到服务端订单支付成功;
  7. 跳转到支付成功页面,并获取订单信息;

3.3 免额支付使用

  1. 付款码支付时,当金额小于等于免额支付时(默认最低金额 30 元);
  2. 将存储的唯一值、设备信息发送给服务端;
  3. 服务端是用唯一值和设备信息获取支付密码;
  4. 使用支付密码支付成功;
  5. 订单支付完成。

3.4 转账模块

  1. 转账记录查询;
  2. 转账人员查询;
  3. 历史转账人员查询;
  4. 转账功能。

4.0 支付设置

4.1 设置指纹

  1. 设置指纹,需要校验支付密码;
  2. 密码校验成功,输入指纹确定;
  3. 指纹校验成功;
  4. 生成唯一值和手机指纹进行绑定;
  5. 将手机唯一值、设备信息等发送给服务端;
  6. 指纹设置成功,将支付密码与手机绑定。

4.2 免密支付开启

当支付金额小于免密支付金额时,无需安全校验,直接支付订单

  1. 设置免密支付,获取当前免额支付金额(默认选中最低金额 30 元);
  2. 切换免额支付时,输入支付密码或指纹进行校验;
  3. 校验成功,上传当前输入的免额支付金额。

5.0 支付园区

比如多个运营方创建了各自的钱包,这些钱包互相之间是不通用的。
C端用户只能在这些钱包各自开通,并且对应消费,然后就有切换的概念。

5.1 园区查询

查询用户已经开通过电子钱包的园区

5.2 园区切换

用户可以手动切换到已开通电子钱包的园区,进行支付操作

文档更新时间: 2022-03-18 14:48   作者:陈冕