支付网关需求分析:接口种类、作用及实现方式

2024-06-03
来源:网络整理

3.1支付网关接口类型支付网关面向商户和企业的接口一般包括以下四种类型:支付接口、查询接口、冲销接口和对账接口。其中,支付接口必须存在,查询接口、冲销接口和对账接口可不存在,但如果不存在,则需要离线人工对账。支付接口、查询接口、冲销接口和对账接口的功能如下: (1)支付接口:一般支付接口是一个网页界面,它的主要功能是接收商户、企业上传的订单信息和数字签名信息,支付完成后,将支付结果返回给商户或用户。 (2)查询接口:目前部分银行为商户、企业或消费者提供订单查询功能,该订单查询功能就是通过接口来实现的。 查询接口主要功能包括单笔订单查询、多笔订单查询和批量订单查询[23] (3)冲销接口:在银行网上支付交易业务的客户端,如果一笔交易显示成功,那么需要返回到服务器端,也就是银行的服务端进行相应的标记。因此冲销的概念可以理解为一笔正向交易的逆转交易。冲销接口的设计可以很大程度上保护用户和商户的利益。终端交易成功之后,还必须返回到客户端进行相应的回滚交易,这样的交易才算是成功的交易,如果没有按照要求进行回滚,那么这笔交易会被归类为失败交易,返回到客户终端。

(4)对账接口:对账是指银行在固定的时间内与各个商户整理、确认相应的交易,并将款项划入相应商户的账户,是一种信用结算。对账是线上交易中最关键的环节之一,如果没有对账接口,则必须线下进行人工对账[23]。3.2 现有银行支付网关接口汇总现以17家银行的支付网关及第三方支付平台的支付接口实验数据为例,从上述差异出发,对银行支付网关进行分析总结。如表3.1所示。表3.1 银行支付网关支付接口汇总银行名称(简称)订单号要求安全机制提交方式所需提交的编号支付结果通知方式长度唯一协议及证书纯文本组织格式广东发展银行(GDB)在配置文件中设置,长度固定且唯一 SSL; 银行公钥,商户私钥 商户号+订单号+金额(商户号,订单号有定长,根据字符位置区分) http get 金额,商户号,订单号,返回URL,签名前台 浦发银行(SPDB)=12 唯一SSL;私钥容器(包含支付网关公钥,证书链,商户私钥需要导入) 项目结构为“项目名=项目值”,交易名称,明文,签名前台 交通银行=20 订单SSL;银行系统项目结构http接口版,由商户()号+8根证书,商户私钥(将根证书导入商户系统JVM)为“项目名=项目值”,确定后台商户号,订单号,订单日期,订单时间等提交字段。

后台、前台均可通知。建设银行(CCB)=30唯一SSL;加密采用 MAC算法(标准MD5算法);数字签名采用算法,银行项目结构需为“项目名=项目值”,商户编号、支行编号、订单号、金额、备注、签名等分别分隔前台通知和后台通知。中国建设银行(CEB)1-30单号唯一SSL;私钥容器(含银行支付网关公钥、证书链,需导入商户私钥)项目结构“项目名=项目值”,每一项以http post交易名、明文、签名分隔前台通知、后台通知可配置辽宁银联(LNUP)16 SSL;银行公钥、商户私钥接口封装http post版本,(请求消息,按接口封装)后台通知、前台通知中信银行()=15唯一SSL; 商户私钥(epf格式)、银行公钥(导入到浏览器)固定格式XML字由前台通知,导入民生银行(CMBC)20商户自定义流水号15唯一SSL;银行公钥,商户私钥项目结构为“项目名称=项目值”,每一项由前台通知,形成招商银行(CMB)SSL; 银行端安装证书,请求用户协议,SSL自动添加分行号,用户号,订单号,金额,日期,商户URL,商户参数,前台通知,后台通知 10 号一联(=20 唯一SSL;商户私钥,银行公钥项目结构为“项目名=项目值”,每一项post(加密字符串),(签名 11 北京农商银行() 12 唯一SSL;商户私钥容器(包含银行公钥,证书链,需要导入商户私钥),商户公钥,通过北京农商银行系统将商户公钥传给银行 项目结构为“项目名=项目值”,每一项都有交易名,明文,签名前台 12 中国工商银行(ICBC) =30 SSL;商户私钥,银行公钥项目结构为“项目值”,每一项之间没有分隔符 http post 接口名,接口版本,订单号,金额,商户号先通知后台商户返回销售处关闭连接,银行再通知用户在前台。

该过程是串行执行的 13 环消息(IPS) = 30 唯一SSL;128个SSL证书。 MD5摘要;通过传输信息,SSL自动添加项目形成“项目值”,每个项目之间没有分隔符。 商户号、订单号、网关类型、金额类型、金额、日期等。 前端通知可选,后端通知可选。 14 中国农业银行(ABC) = 50 唯一SSL;ABC根证书、支付平台证书、商户证书封装接口封装接口前端通知、后端通知 15 深圳发展银行(SDB)一日SSL;商户私钥容器(导入商户私钥),将商户证书(公钥)传递给银行。项目结构为“项目名称=项目值”,每个项目之间为明文、签名、交易名称、返回URL。 前端通信 16 兴业银行(CIB) = 12 唯一SSL;无需证书,DES加密 项目结构为“项目值”,每个项目之间没有分隔符。 http post 订单号、商户号、订单日期、金额 前端通讯 17 邮政储蓄银行 20 (长度不足的唯一SSL;证书流项目结构为“项目值”,各项之间没有分隔符。 http post 商户号、订单号 金额、币种、 交易日期、交易类型、用户名、签名、商户URL 前台 3.3 支付网关功能需求 通过对当前银行支付网关的调查,本文梳理出银行支付网关系统功能的主要功能点,包括:交易支付、订单查询、支付结果通知、订单信息实时查询、系统管理等。

网关支付_网关支付的钱可以退回吗_网关支付是什么意思

需要用用例图来说明系统功能,如图3.1所示。 图3.1 支付网关用例视图 作为用例视图,它的主体有:参与者、系统边界和用例。从图3.1可以看出,边界的外侧是参与者,边界的内侧是用例,用例表达了参与者对于系统的需求。支付网关包含三类参与者:商户系统、管理员、各银行支付网关。从系统的用例图可知,系统的管理员可以对电商平台的支付网关系统进行相应的管理,同时可以有效的分配整个系统的权限;通过电商平台的支付网关系统可以进行查询、冲销、对帐和支付等操作。本文设计的支付系统可以通过电商平台的支付系统,有效的为各商户、银行的支付网关提供统一的接口。 通过该网关支付接口,可以有效缩小各个银行之间的差异性,使各个网络的支付变得顺畅、快捷。从电商平台支付系统到银行支付网关有很多步骤,每个步骤都有具体要执行的任务,分别是: (1)交易支付:商户企业通过HTTP协议上传一些订单数据到支付网关,支付网关系统验证这些数据的完整性和有效性,检查数据项中是否包含相关银行的支付信息。 (2)支付结果通知:交易支付完成后,当银行支付结果通知返回时,本系统会对通知进行验证,验证通过后,将订单信息和结果放入等待通知的商户列表中,并向商户发送通知。

(3)订单冲销:订单冲销包括两种情况:第一种是系统实时查询功能,当检测到尚未支付成功或支付结果不确定的订单时,如果银行查不到结果,银行就会发起冲销;第二种是商户和企业的冲销请求,系统接受请求,核实无误后提交银行冲销。 (4)对账:为保证支付的准确性,每天必须在一定时间对交易发起方的账户信息和银行的账户信息进行对账,进行对账交易。 (5)订单查询:商户可以通过订单查询查询订单支付的状态。当商户因某种原因没有收到支付结果通知或通知失败时,商户可以通过向系统发起查询请求重新确认。 (6)订单信息实时查询:系统有时可能会因为网络、服务器故障等原因无法收到银行支付结果的返回信息。 数据库详细记录了支付状态为初始、失败或不确定的订单,实时订单查询功能可以定期查询系统数据库中的订单总信息,需要查询银行才能确定订单的最终状态。(7)系统管理:系统管理是指系统管理员对软件系统进行配置、改进、更新维护,使软件系统正常工作。作为商业支付平台,其组成涉及计算机的各个方面,包括硬件、软件、网络等各个层面。系统管理可以使支付网关高效运行。

3.4 支付网关的非功能性需求 按照马斯洛需求层次理论,需求可以分为五个层次,从最基本的低级需求到最高层次的自我实现需求,是一个循序渐进的过程。对于软件系统来说,软件需求也可以分为多个层次,最基本的需求是功能性需求,在实现基本需求的基础上,软件需要满足各种非功能性需求,包括可靠性、可维护性、安全性、可扩展性等。电子商务支付涉及敏感数据,安全性要求非常高,这就对交易过程中的数据提出了更高的要求:机密性、完整性和即时性。机密性是指保护数据库不因非法或不正确的操作和使用而导致数据泄露、修改甚至破坏;完整性是指数据的正确性、一致性和兼容性[1];即时性主要是防止延迟或拒绝。支付网关采用以下技术实现安全性: (1)密码技术和密钥服务管理 密码技术是指对商户、企业、客户和消费者的信息以及详细的交易信息进行重新编码。 是为了防止非法用户获取真实信息内容而采取的技术手段,对信息内容进行部分或全部隐藏。密钥服务管理是对各种密钥,如密码、数字证书等关键信息的管理、授权和注销。在支付网关系统中,经常使用密码技术对交易信息进行加密,以保证交易和支付信息的安全。加密主要包括对称加密和哈希码加密(非对称加密)。

对称加密是指通过私有的特殊密钥对信息进行加密和解密的过程,主要包括各类支付卡的加密,如银行卡、信用卡、支付卡等的加密技术。根据PCI的DSS规范,加密的私钥必须定期更换,不能明确地存储在数据库中。哈希编码是利用哈希算法计算消息的哈希值的过程,在这个评估过程中,需要保证信息在传输过程中不能被更改,哈希编码过程本身是不可逆的。支付网关利用哈希算法对商户进行身份验证,哈希算法也会对商户的授权信息和系统登录门户的密码进行相应的加密处理。响应PCI的要求,支付网关系统有密钥服务用于定期更换和维护密钥,密钥服务会定期生成新的密钥并部署到密钥仓库中。

分享