文档库 最新最全的文档下载
当前位置:文档库 › 云网支付网关技术接口手册v1.2

云网支付网关技术接口手册v1.2

云网支付@网技术手册

1 简介 (2)

1.1 目的 (2)

1.2 本手册适用对象 (2)

1.3 开发调试流程综述 (2)

1.4 技术支持 (3)

2 安全控制 (3)

3 在线支付接口开发说明 (3)

3.1 测试接口说明 (3)

3.1.1 签名测试模块: (3)

3.1.2 下订单测试模块: (4)

3.1.3 支付成功提货测试模块: (4)

3.1.4 支付网关整体测试流程模块: (4)

3.2 实时通知商户支付结果方式的实现 (5)

3.2.1 商户向云网支付网关提交支付请求信息 (6)

3.2.2 支付网关将支付结果信息传给商户的接口 (7)

3.2.3 两种支付结果通知方式的说明: (8)

3.2.3.1 服务器间通知方式(云网强烈建议用户采用此方式): (8)

3.2.3.2 普通通知方式: (9)

3.2.4 在开发技术接口时还需注意以下方面: (9)

4 商户订单自助查询系统 (10)

4.1 商户向云网网关提交订单查询信息 (10)

4.2 2.网关将查询结果信息传给商户的接口: (11)

5 附录一:支付银行列表 (12)

6 附录二:技术接口范例代码说明 (13)

1简介

中国目前电子商务发展日趋成熟,电子商务网站越来越多,但是统一的支付平台还不是很成熟,基于这种环境,有必要建立一套完整的支付体系。本支付系统集成各个大银行的支持,提供给商家一个统一的平台,方便商户使用,能够及时的反应支付结果信息。

遵循“专业、安全、高效、便捷”式的设计原则,云网支付网关系统为开展电子商务的商户提供了统一的网上交易支付平台。该网关系统定义了一个和商户系统的开放接口,商户系统通过这一接口就可以使用众多现有流行的银行支付系统完成网上交易,而不必针对每家银行的支付系统进行设计。同时系统还提供了完善的商家后台管理功能。

1.1 目的

本手册的主要目的是帮助云网支付网关商户熟练掌握支付网关的交易流程、网关技术接口、后台管理功能,并能方便地与商户网上商务系统紧密集成。

1.2 本手册适用对象

请确认您申请的商户时选择的产品类型,本手册主要针对非“简易型”产品使用。

本手册的适用对象为使用云网支付网关系统商户的网上应用开发人员、维护人员和管理人员,他们应具有如下基本知识:

熟悉Microsoft Windows/NT、Windows9x、Windows 2000、Windows XP、、Windows Vista、HP-UX、AIX、SUN Solaris、Linux、BSD等操作系统;

熟悉基于上述系统的网站设置和网页制作方法;

熟悉标准CGI(Common Gateway Interface)或ASP(Active Server Pages)或ISAPI的开发方法或PHP或JAVA、.Net;

了解基于上述平台MD5签名算法;

了解一般信息安全的基本概念。

1.3 开发调试流程综述

商户与云网公司完成所有商务手续后,可进入开发调试阶段。详细过程如下:

1.1登录商户管理后台(https://https://www.wendangku.net/doc/8a3185004.html,/admin/),在管理首页获得商户

的“支付密钥”,该密钥作MD5加密时,该密钥最初生成是在商户申请完成时

由系统自动生成,在商户管理后台可以修改;

1.2参照本文档进行技术接口的开发,详见下文第3节;

1.3进行联网调试;

1.4商户维护人员(日常工作操作员)熟悉云网支付网关商户后台各功能,可参看

《云网支付网关商户管理后台使用手册》;

1.5正式上线;

1.4 技术支持

有关云网支付网关系统开发、设计、集成、调试、运行中的任何问题,请与云网公司支付网关事业部联系:

地址:北京市海淀区北四环西路67号大地科技大厦615 室

邮编:100080

电话:010-********-2 支付网关事业部

Email:serv@https://www.wendangku.net/doc/8a3185004.html,

2安全控制

网上交易的传输安全控制手段采用SSL(Secure Socket Layer),SSL是一种被广泛使用的INTERNET传输加密标准。客户端的浏览器发送CGI请求时使用https协议,所有用https发送的请求以及Web Server返回的结果都会自动使用SSL加密。

3在线支付接口开发说明

3.1 测试接口说明

测试接口是把整个在线支付接口流程拆分为四个部分,分步骤进行开发测试,这样可有效缩短您开发技术接口的时间。

1、签名测试模块

2、下订单测试模块

3、支付成功提货测试模块

4、支付网关整体测试模块

3.1.1签名测试模块:

测试目的:测试商户端的MD5加密结果和云网端进行MD5加密结果是否一致;

测试地址:

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/port_test31.asp 传递参数:

源串:testStr

MD5加密结果串:signStr

参数说明:

testStr是未进行MD5加密前的一个字符串

signStr是对testStr串进行MD5加密后的结果串,提交到测试路径时,先后顺序可变。

例如:

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/port_test31.asp?testStr=ader utyigh&signStr=fe2aa1087c441ce9d8b4b3a378795532

3.1.2下订单测试模块:

测试目的:测试商户端的订单信息是否能被云网网关系统正确接收;

测试路径:

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/port_test11.asp 测试说明:商户端需要提供以下信息:c_mid、c_order、c_name、c_address、

c_tel、c_post、c_orderamount、c_ymd、c_moneytype、c_retflag、c_returl、

c_signstr、c_memo1、c_memo2、paygate、c_email(各项具体含义详见下文,3.3节有详细描述),其中c_signstr是采用MD5对以下字符串:c_mid、c_order、c_orderamount、c_ymd、c_moneytype、c_retflag、c_returl、c_paygate、c_memo1、c_memo2和c_pass

进行加密得到加密串,如:c_signstr=MD5(c_mid & c_order & c_orderamount & c_ymd & c_moneytype & c_retflag & c_returl & c_paygate & c_memo1 & c_memo2 & c_pass) 请按照上述先后顺序组成一个无间隔字符串进行MD5加密,其中c_pass为商户的支付密钥,云网支付网关正确接收到信息后,会在页面显示出所接收的各项信息及验签结果;

3.1.3支付成功提货测试模块:

测试目的:根据商户端提交的订单信息模拟测试结果是否正确;

测试路径:

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/port_test21.asp 测试说明:首先由客户端访问上面提供的页面,然后根据页面要求填写各项信息,提交后,云网端会根据提交的信息返回支付结果;

3.1.4支付网关整体测试流程模块:

测试目的:在能正确完成上面三部分测试模块后,就可以模拟测试完整支付流程了。

测试路径:

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/getorder_test.asp 测试说明:在客户端准备好需提交的各项信息后,访问上面提供的测试网页,并传递准备好的信息(信息项同1.5.2中信息项),经过云网端验证后进入

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/createorder_test.asp页面,

选择支付方式,之后进入

https://https://www.wendangku.net/doc/8a3185004.html,/purchase/cnpaygate/testport/handle_test.asp页面,显示出支付结果。

3.2 实时通知商户支付结果方式的实现

商户在用户完成支付过程后希望能够控制从银行WEB系统自动转回商户WEB系统,并且商户WEB系统能够实时获得用户的付款结果。比如,出售数字产品的商户,在支付成功的情况下,商户的结果页除包含支付成功通知信息外,还可以包含用户购买的信息产品。

为了解决这个问题,要求商户WEB系统必须提供一个支付结果通知命令。云网支付网关在收到订单确认页发出的支付命令后,先执行支付操作,然后调用商户WEB系统的支付结果通知命令,把支付结果通知商户WEB系统,同时取得商户WEB系统生成的支付结果页面(由支付结果通知命令生成)。最后,支付网关系统把由商户WEB系统的支付结果通知命令生成的支付结果页返回用户的浏览器。流程可见图一。

目前云网提供了两种实时通知商户的方式:服务器间通知方式和普通通知方式,云网强烈建议商户采用服务期间通知方式,具体区别,下面有详细描述;

某些商户在使用实时通知商户支付结果方式后,觉得还需要在银行的支付结果通知命令中带上商户自己的参数,比如商户希望知道是哪个分支机构的订单,或订单在商户内部处理的不同于订单号的流水号,又或者商户希望借助这个参数建立完整的session,等等。

为了解决这个问题,在本支付方式的基础上,云网支付网关提供了带商户参数的支付方式。

实时通知商户支付结果方式各部分的如何实现的描述如下:

图一、实时通知商户支付结果方式流程图

(1)

3.2.1 商户向云网支付网关提交支付请求信息

支付网关接口:https://https://www.wendangku.net/doc/8a3185004.html,/purchase/getorder.asp

为了保证交易的安全性,请在提交时使用HTTPS 协议(SSL )。

参数说明:

1、c_paygate :当商户定义该值时,系统会自动转入银行的支付页面。

2、c_signstr (交易信息签名)得到的方法: 首先将c_mid 、c_order 、c_orderamount 、c_ymd 、c_moneytype 、c_retflag 、c_returl 、c_paygate 、c_memo1、c_memo2、notifytype 、c_language 和c_pass 拼成一个字符串(说明:其中c_pass 是为商户的支付密钥,在商户申请成功后,登录商户管理后台

https://https://www.wendangku.net/doc/8a3185004.html,/admin/后,首页即可得到,而且商户可随时修改该密钥),然后对于这个字符串再进行MD5加密,举例如下:

c_signstr =md5(c_mid & c_order & c_orderamount & c_ymd & c_moneytype &

c_retflag & c_returl & c_paygate & c_memo1 & c_memo2 & notifytype & c_language &

c_pass)

订单信息确认页面提交的FORM格式示例如下:

订单号10001

金额13.45

日期2002年5月3日

3.2.2支付网关将支付结果信息传给商户的接口

网关采用 get方法将参数按照预定顺序发给商户返回的URL地址,传回参数名称和顺

参数说明:

1.上表中,备注项里带*号的参数值是由商户系统传递过来的相应参数值

2.c_signstr(交易信息签名)得到的方法:

首先将c_mid、c_order、c_orderamount、c_ymd、c_transnum、c_succmark、

c_moneytype、c_memo1、c_memo2和c_pass拼成一个字符串(说明:其中c_pass是为商户的支付密钥,在商户申请成功后,登录商户管理后台https://https://www.wendangku.net/doc/8a3185004.html,/admin/后,首页即可得到,而且商户可随时修改该密钥),然后对于这个字符串再进行MD5加密,举例如下:c_signstr = md5(c_mid & c_order & c_orderamount & c_ymd & c_transnum &

c_succmark & c_moneytype & c_memo1 & c_memo2 & c_pass)

3.2.3两种支付结果通知方式的说明:

实时通知商户支付结果可以用2种方式进行通知,即服务期间通知方式和普通通知方式。

3.2.3.1 服务器间通知方式(云网强烈建议用户采用此方式):

云网支付网关采用get方法将支付结果参数发给商户提供的c_returl地址;

在商户提供的c_returl页面中,商户需要根据接口的说明验签后,按以下格式输出:

resultreURL

参数说明:

result:值固定为1,表示商户已成功收到网关的支付成功的通知。

reURL:商户显示给用户处理结果页面的URL

样例:

1 https://www.wendangku.net/doc/8a3185004.html,/purchase/handle.asp

云网支付网关获取商户的通知反馈结果后,会采用get方法将支付结果参数提交给商户返回的reURL参数所对应的网址,并将商户的处理结果显示给用

户;

未收到通知反馈结果的处理:

由于网络等原因,造成云网网关没有获取到商户对支付通知的反馈结果,将按以下机制向商户网关发送支付成功的通知,至收到明显的反馈结果:

1.第一次通知失败后,网关按1秒、2秒、4秒、8秒…..的间隔向商户发送

通知,间隔时间倍增。

2.当发送的间隔时间超过30分钟之后,每隔30分钟发送一次通知。

第一次通知失败24小时之后,网关还无法获得网站的反馈结果,将对此订单停止发送通知。

3.2.3.2 普通通知方式:

1.云网支付网关采用 get方法将支付结果参数发给商户提供的c_returl地址;

2.商户的c_returl程序,根据接口的说明验签并进行商户自己的商务逻辑处理,

并输出处理结果;

云网采用技术手段将商户网站c_returl处理的结果显示给用户;

采用此方式,云网支付网关向商户只发送一次支付成功的通知,如果期间遇到网络问题或商户端程序出错,商户将无法实时接收到此通知,需人工到网

关的商户后台查询。

3.2.4在开发技术接口时还需注意以下方面:

1.1商户系统也可以进一步判断该命令发出方的IP地址为云网支付网关网站的IP

地址,以防止用户伪造。如果商户系统对支付网关通知命令的真实性要求不是

很高,只验证IP也可,这样可降低商户系统开发的复杂性。

云网公司目前使用IP:211.103.171.66-88 ,共23个IP

1.2在c_succmark为Y时,商户在支付结果通知命令中必须判断c_orderamount

(用户的实际支付金额)的值和商户系统中记录的该笔订单对应的支付金额是

否一致。不能以之前系统产生订单时的金额为准!这是为了防止用户在得到支

付页面后修改支付金额。

1.3商户如果需要不止一个参数,可以自行把参数组合、拼装,但组合后的结果不

能带有’&’字符(如果带有’&’字符,银行收到这样的支付请求时将认为其后是另

一个参数,其他可能被浏览器转义的特殊字符也应当避免),总长不能超过

200。

4商户订单自助查询系统

4.1 商户向云网网关提交订单查询信息

接口:https://https://www.wendangku.net/doc/8a3185004.html,/purchase/queryorder.asp

为了保证交易的安全性,建议在提交时使用HTTPS协议(SSL)。

c_signstr(交易信息签名)得到的方法:

首先将c_mid、c_order、c_ymd、c_returl、c_memo1、c_memo2和c_pass拼成一个字符串(说明:其中c_pass是为商户的支付密钥,在商户申请成功后,登录商户管理后台

https://https://www.wendangku.net/doc/8a3185004.html,/admin/后,首页即可得到,而且商户可随时修改该密钥),然后对于这个字符串再进行MD5加密,举例如下:

c_signstr = md5(c_mid & c_order & c_ymd & c_returl & c_memo1 & c_memo2 & c_pass)

订单信息确认页面提交的FORM格式示例如下:

4.2 2.网关将查询结果信息传给商户的接口:

网关采用 get方法将参数按照预定顺序发给商户返回的URL地址,传回参数名称和顺

注:备注中带*号的参数值为由商户系统查询订单结果传递过来的相应参数值。

c_signstr(交易信息签名)得到的方法:

首先将c_mid、c_order、c_orderamount、c_ymd、c_succmark、c_moneytype 、

c_memo1、c_memo2和c_pass拼成一个字符串(说明:其中c_pass是为商户的支付密钥,在商户申请成功后,登录商户管理后台https://https://www.wendangku.net/doc/8a3185004.html,/admin/后,首页即可得到,而且商户可随时修改该密钥),然后对于这个字符串再进行MD5加密,举例如下:

c_signstr = md5(c_mid & c_order & c_orderamount & c_ymd & c_succmark &

c_moneytype & c_memo1 & c_memo2 & c_pass)

交易成功标志(c_succmark)说明

信息包括网址直接在页面输出。

说明:如果商户同一笔订单向云网支付网关提交一次以上而使用该查询系统时,本系统只返回一条订单信息,返回的规则如下:

1.如果有支付成功的订单,优先返回支付成功的信息;

2.如果都未支付成功或都支付成功时,按照订单完成交易时间倒序排列,返回最新

一条;

5附录一:支付银行列表

注:支付银行的变动不再另行通知,以云网支付网关的银行列表为准

6附录二:技术接口范例代码说明为帮助商户能够更快速的开发技术接口,云网支付网关提供了范例代码(以asp版为例

解释,其它各版功能相同,只是实现语言不同):

1.文件MD5.asp:完成对提交的字符串进行32位MD5加密处理的函数,已经过测

试;

2.文件SendOrder.asp:完成将商户订单信息提交至云网支付网关的功能;

3.文件GetPayNotIFy.asp:完成接收云网支付网关支付通知信息,验证信息有效

性,判断支付结果的功能

说明:

1.以上文件可登录商户管理后台(https://https://www.wendangku.net/doc/8a3185004.html,/admin/),在首页下载

“技术接口范例代码(ASP版)”即可;

2.本范例代码是针对ASP平台开发的,但其它平台也可作为参考,对于技术接口

参数的定义和MD5签名等,都会有所帮助;

另:目前提供的范例代码包括:ASP、.Net、PHP、JSP等版本。

相关文档