本文章地址:https://wutong.me/2018/10/09/kuaiqian-merchant.html 转载请注明出处

想快捷接入各种支付功能需要使用第三方支付服务,因某项目需要这种功能遂记录一下。

准备工作

支付方式

网关支付:填写支付参数跳转到快钱支付的一个地址,这个地址显示了各种支付方式

SDK支付:在移动端(Android,iOS)中进行支付的一个功能

快捷支付:跟支付宝的快捷支付一样,用户绑定一张银行卡进行支付

名词解释

商户私钥:商户自己生成的私钥,用于在网关支付的时候对发送数据进行签名

商户公钥:商户自己生成的公钥,用于在网关支付的时候快钱对商户发送的数据进行签名验证

快钱公钥:商户登录快钱后台下载的公钥,用于在网关支付的时候对快钱发送的数据进行签名验证

快捷支付证书:由快钱提供给商户的证书,用于在快捷支付通讯的时候传递

网关支付的实现

参照文档进行开发即可,可能会遇到如下问题

签名不正确

在进行签名的时候一定要按照文档提供的参数顺序进行签名计算,且如果参数为空的话不参与计算

参数值处理

参数值需要进行 urlencode 处理,计算出来的签名也需要进行 urlencode 处理

快捷支付的实现

快捷支付的流程如下:

动态鉴权(相当于绑卡) -> 消费(支付)

动态鉴权

传递参数并调用动态鉴权接口成功后,快钱在返回的参数用会有个token、payToken,同时会像用户的手机中发送一条验证码。 token和验证码会用于调用消费接口的时候进行传递,如果在动态鉴权接口中传递了 customerId 字段,则会保存此卡与customerId 的关联

消费

支付的时候需要传递银行卡号码、持卡人身份证号码、持卡人姓名、手机号、验证码、token信息,如果之前在鉴权中提供了 customerId 则 可以传递 payToken 或者 缩略卡号