POST TIME:2018-12-03 21:33
在线支付业务是所有电商平台的核心业务,我在人人都是产品经理的网站上使用关键字“支付”检索了下,发现关于支付业务的设计少之又少,不光是支付,关于商品、产品、购物车等等领域模型的设计也很少,大家都集中讨论在产品外在设计上,告诉你这个事情是怎么回事,但是没有告诉设计应该如何落地,个人认为一个合格的产品经理是一个既能进行需求分析、业务设计、同时也能做数据设计、分析的。
本文主要以2B2B平台为例对尝试着对支付绑定、支付解绑、在线支付、退款等业务流程及设计方式进行说明、梳理。如果您觉得有些帮手或者觉得哪里分歧错误,希望小伙伴留言进行交流或者点个赞。
设计策略在做支付业务设计的时候,产品经理不光要分析业务流程还要考虑设计策略,关于支付业务的设计策略主要表现在数据安适性和扩展性。
1、数据安适性采用银联签名机制、加密机制确保支付过程中支付的安适性。
报文签名与验签机制的共同点:首先都需要对报文中出现签名域(signature)之外的所有数据元采用key=value的形式根据名称排序,然后以&作为连接符拼接成待签名串。其次,对待签名串使用SHA-1算法做摘要。
报文签名机制与验签机制差别点:
报文的签名处理机制如下:使用银联颁布给商户的商户RSA私钥证书对摘要做签名。最后,对签名做Base64编码,将编码后的签名串放在签名(signature)表单域里和其他表单域一起通过HTTP Post的方式传输给银联在线支付平台。报文的验签处理机制如下:使用商户入网时银联提供的银联在线支付通讯RSA公钥证书对摘要做签名。最后,对签名做Base64编码,与返回报文表单中的签名(signature)域签名串做比较,如一致则验签成功,不然验签失败。加密机制:对于持卡人密码银联在线支付平台使用RSA公钥证书对ANSI X9.8带主帐号格式的PIN加密并做Base64编码后传输,,以保障密码的安适性。依据商户可选配置,对于CVN2、有效期、卡号使用RSA公钥证书别离做加密并Base64处理。对于敏感信息银行卡验证信息及身份信息部分内容,采用Base64编码后传输,以做数据屏蔽。对于文件内容,使用DEFLATE压缩算法压缩后,Base64编码的方式传输,压缩编码后的内容参与签名摘要运算。
2、程序扩展性在支付业务分析设计后,其相关数据库表包孕支付记录表 支付记录表支付银行表 支付绑定表 支付异常表、支付订单表;以后再有类似的在线银联支付业务可以直接进行复用,不消新建表。此外以下业务流程设计也可以进行扩展使用。
支付业务流程设计首先介绍整个业务的整体业务流程、资金流业务流程。其次别离介绍支付绑定、解绑、支付、退款等业务流程的设计。
1、支付业务整体流程图2、支付业务资金流挨次图3、银行卡绑定业务挨次图绑定业务:首先要建立绑定关系
建立绑定关系,指商户/收单机构的用户号(即报文中的绑定标识号)与用户的银联卡信息进行关联,关联信息留存在银联系统中。建立绑定关系可分为前台模式和后台模式,前台模式时,用户在银联页面输入相关银行卡信息;后台模式由商户采集银行卡信息发送至银联进行绑定。下面以前台模式为例进行说明,业务流程图如下所示:
流程说明:
如果采购方没有绑定过银行卡,会提示“请先绑定银行开再支付”;如果绑定过银行卡,会跳转至支付页面;在绑定银行卡页面,如果第一次绑定银行卡,绑定信息中会进行“交易平台支付密码”新增操作,不然无此操作,一个采购方只能有一个“交易平台支付密码”,可在会员中心修改此支付密码;在银联绑定卡页面,可选择储蓄卡和信用卡,点击“绑定”,跳转至银联绑定页面,输入卡号等绑定信息,绑定成功后会跳转到平台页面,绑定成功的卡可进行解绑。绑定卡以后,可进行支付,在支付页面,选择一张绑定银行卡,输入手机验证码和“交易平台支付密码”,支付点击“支付”,支付成功会跳转至支付成功页面,订单列表中可看到支付成功后订单信息。在已付款订单列表页,可对当天清算前订单进行退款,点击“退款”,会返回退款结果;如果订单支付成功,配送商(销售)可进行接单;采购方在配送商(销售)接单后可进行“确认收货”操作;