You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
土豆兄弟 9d278ff61a [新增功能](master): 支付代码更新
更新了文档
2 years ago
..
src/main [新增功能](master): 更新了Drools和EasyExcel相关的内容 2 years ago
.gitignore [新增功能](master): 脚手架 2 years ago
README.md [新增功能](master): 支付代码更新 2 years ago
TODO-list.md [新增功能](master): 更新了Drools和EasyExcel相关的内容 2 years ago
pom.xml [新增功能](master): 更新了Drools和EasyExcel相关的内容 2 years ago

README.md

企业级支付全家桶设计和实战

1. 基本概念逻辑

1.1 主流支付渠道说明

  • 种类

    • 微信支付
    • 支付宝
  • 支付产品逻辑

    • 微信支付
      • 社交行为进行绑定的,有利于社交行为下的交易促成
      • 对北方比较友好,北方人用微信支付的根基比较重
      • 微商比较友好
      • 对小程序生态的付款比较友好
    • 支付宝支付
      • 对生活服务类和理财类比较友好
      • 对淘系下的支付行为比较友好
      • 在南方比较受到欢迎和推崇
    • 银联/云闪付
      • 线下比较多
      • 主要是有优惠相关的场景
  • 市场份额

    • 支付宝 54%
    • 微信支付 40%
    • 银联支付 0.4%
    • 京东/美团都有0.7%以上
  • 不同支付场景使用不同的支付方式

    • 在微信小程序里面付款支付, 需要使用小程序支付接口
    • 在微信里面打开网页进行付款要使用JSAPI支付接口
    • 在手机浏览器上面使用微信付款要用H5支付接口
    • 如果选用微信扫码支付,需要调用Native支付接口

1.2 补充研究方向

  • 各种支付的资质和通道??????
    • 有什么好的申请方式
    • 收费情况
    • 限制

2. 环境讲解

  • 正常Java环境即可

3. 微信支付

3.1 微信支付的种类

  • 付款码支付场景
    • 线下消费的时候,商家通过扫码器(200-300元),扫描你的付款码完成免密支付
    • 把显示的付款条码值进行输入,可以类似实现这种功能
    • 付款码和收款码的区别?
      • 手续费是没有去别的,付款码会有机器设备带来的一些开支
      • 付款码可以接入商户系统,而收款码无法接入商户系统
      • 付款码支付的接入商户系统,数据会保存在商户的管理系统后台,对交易明细进行一个良好的保存
      • 小商贩不需要进行付款码,收款码即可,方便快捷
  • JSAPI支付场景
    • 如果用户在微信内置的浏览器里面下单支付调用微信的JSAPI支付接口即可
    • 使用JS代码检测用户支付的环境
  • H5支付场景
    • 如果用户在手机内置浏览器里面打开电商网站下单支付需要调用的是H5支付接口
  • Native支付场景
    • PC端进行对接的方式
    • 使用JS代码检测用户支付的环境
  • 小程序支付场景
    • 如果用户在微信小程序上面下单支付,那么就需要调用微信小程序支付接口
    • 或者展示一个收款码,进行转账即可
  • APP支付场景
    • 如果用户在第三方APP上面下单支付那么就需要调用微信平台的APP支付接口
    • 门槛比较高
  • 刷脸支付场景
    • 大型刷脸设备在(5000-6000左右),小型的在(1500-2000)左右
    • 了解即可

3.2 开发准备

1. 支付宝对接

1.1 介绍

  • 支付宝今年推出了新的转账接口alipay.fund.trans.uni.transfer(升级后安全性更高,功能更加强大)
    • 老转账接口alipay.fund.trans.toaccount.transfer将不再维护
    • 新老接口的一个区别就是新接口采用的证书验签方式
    • 使用新接口要将sdk版本升级到最新版本2022年4月12日 升级时最新版本是4.22.67

1.2 对接流程

  • 证书
  • 写配置文件
  • pom依赖
  • 读取配置信息写配置类
  • 封装成工具类