Skip to content

weichk/campus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

campus 项目说明

参考支付宝生活号:无锡外国语学院

生活号地址:https://openhome.alipay.com/platform/publicAppManage.htm#/app/2018100861588693/overview

1. 支付宝充值一卡通

1.1 学校签约

  1. 学校支付宝开户
  2. 学校授权平台代学校调用支付宝接口(手机网站支付快速接入)
  3. 授权链接

1.2 用户签约

  1. 用户选择学校
  2. 获取身份信息 (支付宝会员授权信息查询接口)
  3. 用户填写一卡通账号,姓名
  4. 验证一卡通账号是否正确(接口名:GetPersonInfo)

1.2 用户充值

  1. 学生或者家长访问生活号
  2. 平台通过匹配用户的身份信息确定学校 (支付宝会员授权信息查询接口)
  3. 用户点卡充值,完成支付宝付款(手机网站支付快速接入)
  4. 平台接收支付宝付款异步通知
  5. 平台处理订单状态,回调一卡通上账接口(接口名:Recharge)

2. 用户刷卡支付宝代扣

支付宝方案:https://doc.open.alipay.com/docs/doc.htm?docType=1&articleId=108978#

2.1 代扣签约

  1. 获取用户信息-免授权模式(https://docs.open.alipay.com/284/106001/)
  2. 支付宝小额免密签约(商户代扣2.0接口,参考demo生成授权链接)

2.1 导入用户数据

  1. 学校或者一卡通提供学生数据:姓名、身份证、学校、是否为学生

2.2 用户绑卡 (新)

  1. 通过支付宝接口获取用户身份证、手机号码信息
  2. 判断信息是否存在,如果存在,调用一卡通绑卡接口
  3. 如果不存在,提供使用绑定学生信息,填写学生姓名、身份证

2.2 用户绑卡

  1. 用户选择学校(已经签约后,通过支付宝userid获取学校)
  2. 获取用户信息-需授权模式(https://docs.open.alipay.com/284/106001/)
  3. 用户填写一卡通账号、姓名、手机号码、身份证号码(手机号码和身份证号码从支付宝特殊接口获取,目前还没有此接口)
  4. 验证一卡通账号是否正确(接口名:GetPersonInfo,返回姓名,identity,status,验证姓名是否正确,状态是否为正常)
  5. 调用一卡通绑定支付宝授权信息(接口名:ZFB_BindDoc,password 随机生成,一卡通厂商接口设计得不好)
2.2.1 获取支付宝user_id

https://docs.open.alipay.com/289/105656

scope填写auth_base,这样不需要用户授权,只获得user_id(支付宝用户唯一标识符)

2.3 消费

  1. 用户在学校pos机上刷卡

  2. 通过物联网网关访问平台代扣接口

  3. 平台收到请求,判断用户是否有代扣失败的订单,有则返回失败,没有返回成功。

  4. 平台异步访问支付宝代扣,代扣失败则按照时间间隔发起代扣请求。

  5. 一卡通物联网网关访问平台接口异常处理:

    • 网络读取超时,需要使用原交易号发起新的请求,由平台做幂等性控制。
    • 网络连接超时,由一卡通平台决定是否要向平台发起请求(使用原交易号)或者直接调用一卡通余额付款。

2.4 消费记录查询

  1. 通过调用一卡通GetPersonDetails接口获取用户消费记录

2.5 挂失

  1. Loss接口

2.6 解绑

  1. ZFB_UnBindDoc接口,其中密码使用绑卡密码

2.7 一卡通代扣逻辑

  1. 判断用户是否支付宝签约,没有签约走原来的逻辑

  2. 访问代扣接口

  3. 返回成功,则代扣成功

  4. 返回失败,则代扣失败,走原来逻辑扣款

  5. 接口异常处理:

    • 网络读取超时,需要使用原交易号发起新的请求,由平台做幂等性控制。
    • 网络连接超时,由一卡通平台决定是否要向平台发起请求(使用原交易号)或者直接调用一卡通余额付款。

About

校园一卡通项目

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published