美文网首页
通用支付接口设计

通用支付接口设计

作者: ithankzc | 来源:发表于2020-02-08 23:42 被阅读0次

其实可以一开始就直接讲支付相关的,但在这里还是先说一下接口设计, 接下来涉及到具体支付方式的时候,也会基于接口设计举例。

接口设计

通用的支付接口

当跳转到支付页面时, 对于支付服务来说,主要就2个参数, 接口设计大概如下

假设backend_domain 为支付服务的后端地址

url: ${backend_domain}/pay/unified_pay
method: post
body: {
  "payment_type": Enum // eg: ALI_WEB, ALI_H5, WX_NATIVE ... and so on
  "order_id": String
}
response: {
   payment_type: Enum,
   extra: Any // 这里会根据不同的支付类型,返回不同的值,后面的文章会更细节说明
}

这样设计的一个好处在于,前端并不需要因为接入多种支付方式,而接不同的接口,设计成一个接口的话,他们要改的就主要是支付方式的枚举值

通用的支付接口还是得做一些让步

眼尖或者已经接过微信支付的同事就会发现,是不是少了一些参数? 是的,的确是少了一些。

如 微信 H5 支付是需要传 scense_info 参数的, JASAPI 支付 则要求必传 openid, 那上面的接口还得再改改

url: ${backend_domain}/pay/unified_pay
method: post
body: {
  "payment_type": Enum, // eg: ALI_WEB, ALI_H5, WX_NATIVE ... and so on
  "order_id": String,
  "openid": String?, // optional
  "scense_info": String?, // optional
}
response: {
   payment_type: Enum,
   extra: Any
}

这样子基本上就能满足大部分的支付需求啦。

还需要再调整?

是,如支付宝网页版支付,是会跳到支付宝自身的页面的,支付完成后如何跳转回原有业务就是一个问题,支付宝提供了一个 return_url 的参数,我们把这个也作为我们的一个请求参数

url: ${backend_domain}/pay/unified_pay
method: post
body: {
  "payment_type": Enum, // eg: ALI_WEB, ALI_H5, WX_NATIVE ... and so on
  "order_id": String,
  "openid": String?, // optional
  "scense_info": String?, // optional
  "return_url": String?
}
response: {
   payment_type: Enum,
   extra: Any
}

到此,接口及参数基本上就满足支付宝支付,微信支付了。

相关文章

  • 通用支付接口设计

    其实可以一开始就直接讲支付相关的,但在这里还是先说一下接口设计, 接下来涉及到具体支付方式的时候,也会基于接口设计...

  • 10.支付管理模块

    在本次项目当中,支付模块采用的是支付宝的扫码支付,初次设计了三个接口:支付接口pay.do、支付状态查询接口que...

  • RestFul 通用接口设计

    一、API接口统一返回类 定义接口通用的结果返回类JsonResult,其中包括请求状态码(code)、请求信息(...

  • 第二天

    1 根据pdm生成sql脚本 2 设计持久层和表现层 2.1 持久层设计(基于泛型+反射) 通用接口: 通用实现:...

  • 通用转换接口设计

    通用转换接口设计 目录 转换接口的定义 转换接口的作用 转换接口的使用 转换接口的实现 1. 转换接口的定义 接口...

  • 微服务:通用接口设计

    什么是微服务 微服务(Microservice)这个概念是2012年出现的,作为加快Web和移动应用程序开发进程的...

  • 设计数据库及通用视图实现api接口

    一、设计数据库 二、通用类视图 三、路由配置 四、postman接口测试

  • 多类继承情况下适应变化设计一例

    在支付中心的中信支付渠道实现层里,关于每个支付接口的对接实现,类图设计方式如下(后附支付中心程序框架-分层结构),...

  • 对接杭州银行支付的总结(一)

    本文主要整理杭州银行的接口示例报文。 支付下单接口 支付回调通知 退款接口 查询支付结果接口 关单接口 对账接口 ...

  • 通用接口测试用例设计

    1.通过性验证: 首先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口文档上的参数,正常传入,是否...

网友评论

      本文标题:通用支付接口设计

      本文链接:https://www.haomeiwen.com/subject/cmgwxhtx.html