当前位置:首页 > 商户开发指南-Java版V2.2- 钢为网
上海浦东发展银行支付网关技术文档 05/2015
3. 客户输入账号和密码后由支付网关验证。验证通过后,根据账号信息将支付请求发至银行业务系统。根据需要,系统同时验证客户的个人证书。 4. 银行业务系统接收支付请求,进行相应的业务处理,将结果返回至支付网关。 5. 支付网关接收业务系统的处理结果。
6. 若由于客户余额不足等原因,业务系统返回处理失败,支付网关直接返回客户失败信息。若业务系统处理成功,支付网关负责将支付结果以http/https的方式通知商户。支付结果中同样有银行使用自己的私钥作的数字签名,以保证信息一定是由银行发出的并且确保其完整性和不可抵赖性。 7. 商户接收到支付成功请求后,并发货给客户。
8. 支付网关会将交易成功的结果直接显示给客户。如果由于超时等特殊原因导致状态未知,客户可以通过查询账户得知是否交易成功。 注意:
在每次成功支付后,商户可以通过3种方式获得交易结果:
1.交易成功结束后,将结果返回给客户页面,会从客户页面提交结果内容到商户接收结果的URL;如果客户的页面阻止了跳出页面方式,则不会提交。 2.交易成功结束后,将从网关服务器多次直接发送交易结果到商户接收结果的URL,如网关服务器收到商户网络层成功接收应答,则不会再次发送,否则再发送一次。因此商户会多次重复收到网关送来的支付交易结果(1,2合计至少2次)。 3.商户可以通过5.3.3节描述的查询交易查询某笔交易的状况。
2.3 撤销、退货、查询及对账文件下载流程
如2.1节中的图表所示,撤销、退货、查询及对账文件下载可以通过3种方式完成。商户可以登录公司网银,商户操作员只需在撤销和退货页面中,查询到相关订单后选择并通过相关授权即可完成,另外公司网银中有相关菜单可以完成查询和对账下载。
在https页面和https指令方式下,商户只需按照相应的方式组织相关的交易字段内容,并进行签名后,发送给我行网关即可进行。具体的签名方法将在章节4中进行介绍,交易字段组织方式将在章节5中进行介绍。
378490365.doc
第 9 页 共 60 页
上海浦东发展银行支付网关技术文档
05/2015
2.4 对账文件格式
对账文件的内容是以―|‖分隔的如下内容,每条记录记录以回车换行结束 具体记录内容格式如下:
交易缩写|清算日期|交易发生时间|订单号|网关流水号|商户号|终端号|交易金额|手续费|净清算金额|响应码|商户保留1|商户保留2
其中,交易缩写参见表7-2。
2.5 安全控制
1.采用PKI和数字证书认证体系
2.通讯使用SSL协议(128位),对数据进行加密
3.商户和银行间数据交互都使用数字签名,并使用公钥进行数据验证,确保数据的完整性和不可抵赖性
2.6 防钓鱼控制
1.域名控制
我行业务人员会维护一组商户合法根域名表。在支付网关收到订单时,支付网关会将支付链接的根域名与维护的合法根域名表进行核对,若核对不成功则不允许交易继续进行。若该合法根域名表中对应商户的合法根域名为空,则不进行此项内容的核对。 2.IP控制
进行支付交易时,建议商户将客户生成订单时的IP信息一同发送到我行支付网关。我行将对此时用户接入的IP与订单生成IP进行检验。如果不一致,则提示用户可能被钓鱼,但由用户选择最终是否继续进行支付操作。
3 开发准备
商户的开发主要包括以下内容:
1.组织交易数据并用商户证书签名后,从商户网站页面发送到我行支付网关相关页面。
2.接收我行服务器反馈的交易结果,验证我行服务器的签名后,对返回的交易结果做相应的处理。 378490365.doc
第 10 页 共 60 页
上海浦东发展银行支付网关技术文档
05/2015
所以商户的开发工作是以签名和验签为中心的相关页面或应用开发。本节
对商户开发和生产环境做简要描述,并列出开发包中包含的文件清单。
3.1 环境要求
硬件方面:由于网上支付系统提供的软件同商户的系统紧密集成,通常不需要额外的硬件投资。系统将安装在商户的应用服务器上,基本配置推荐:基于x86-32位CPU,PIII450以上,256M内存,10M剩余硬盘空间。
软件方面:JDK1.3或以上,操作系统不限。
3.2 开发包文件清单
? spdbmerchant.jks
商户密钥容器,参见3.3.4-3.3.7,4.4
? spdb_merchant.properties 商户配置文件,放置到/WEB-INF/class目录下,参见
3.3.5 ? pfx2jks.bat
导入证书的脚本文件(win),在unix或者linux
中将其属性设为可执行即可,参见3.3.6
? spdbmerchant.jar
开发包类库,放置到/WEB-INF/lib目录下 基础类库,放置到/WEB-INF/lib目录下
? bcprov-jdk14-127.jar ? jce.jar ? jcert.jar ? jnet.jar ? jsse.jar
基础类库,放置到/WEB-INF/lib目录下 基础类库,放置到/WEB-INF/lib目录下 基础类库,放置到/WEB-INF/lib目录下 基础类库,放置到/WEB-INF/lib目录下
测试用证书相关
商户密钥容器(测试用),使用时需复制到上 级目录,参见3.3.4-3.3.7,4.4
? 目录 \\cert4test
? spdbmerchant.jks
? Readme.txt
说明文件
商户测试证书,密码为1
? 2002182316.pfx ? 目录 \\cert4real
生产用证书相关
商户密钥容器(生产用),使用时需复制到上
级目录,参见3.3.4-3.3.7,4.4
? spdbmerchant.jks
? Readme.txt 378490365.doc
说明文件
第 11 页 共 60 页
上海浦东发展银行支付网关技术文档
注意:
05/2015
测试用网关证书的有效期到2007年2月9日,如果开发测试在该日期以后,请联系我行人员获取新版本开发包。
3.3 商户支付网关证书安装步骤
3.3.1 说明
商户使用银行为商户申请的支付网关专用的数字证书,由CFCA颁发。
3.3.2 准备工作
建议使用windows操作系统进行证书下载和安装工作,推荐使用Windows2K/WinXP 或最新的Windows2003。
到http://java.sun.com 或其他下载中心下载相应的 JDK安装软件。确保当前的运行路径的PATH系统变量中包含 $JDK_INSTALL_DIR/bin
3.3.3 获得证书
1.测试证书
2.测试证书一般随开发包提供,如3.2文件清单中的2002182316.pfx,该文件名会因商户不同而不同。该证书也可以由分行开发人员在测试环境申请证书,打印密码封,并根据密码封中的证书序号和密码在测试环境下载证书。生产证书
生产环境证书包括公司网银证书和支付网关证书。这两种证书都是在我行柜面申请,不同的是公司网银证书需要下载到USBKEY中,而支付网关证书直接下载(或导入)到系统中。在实际操作中,可以在Windows机器上下载支付网关证书,然后导出成pfx文件(导出过程中选择―导出私钥‖),供步骤3.3.4使用。
在柜面申请成功拿到密码封后,即可到我行网上银行下载生产证书,下载地址为:
http://ebank.spdb.com.cn/cerenterprise.html 注意:
支付网关证书点击电子商户证书下载。
公司网银证书下载时必须先安装USBKEY驱动,然后点击公司网银证书378490365.doc
第 12 页 共 60 页
共分享92篇相关文档