农行网上支付平台-交易市场接口编程指南-PHP_Edition-V1.0
中国农业银行网上支付平台 交易市场 PHP商户接口编程指南Java EditionV1.0 ,修订历史纪录 ,目录1. ...........

中国农业银行网上支付平台 交易市场 PHP商户接口编程指南
Java Edition
V1.0
,

修订历史纪录



目录
1. ................................................................................................................................................................ 简介
1.1
1.2
1.3 目的............................................................................................................................................................ 3 功能描述.................................................................................................................................................... 3 总体架构图................................................................................................................................................ 3 3 2. 接口开发软件包说明 . ................................................................................................................. 4 3. 安装步骤 ...................................................................................................................................... 5
3.1
3.2
3.3
3.4 安装前检查................................................................................................................................................ 5 系统配置.................................................................................................................................................... 5 W EB S ERVICES 接口应用配置 . .................................................................................................................. 5 配置测试应用............................................................................................................................................ 6 4. 配置文件说明 .............................................................................................................................. 7 5. 范例交易说明 .............................................................................................................................. 8
5.1 交易流程.................................................................................................................................................... 8
5.1.1 Web Services技术的引入 . ................................................................................................................. 8
5.1.2 签约和解约交易 ................................................................................................................................ 8
5.2 交易开发说明.......................................................................................................................................... 10
5.2.1 开发环境的配置 .............................................................................................................................. 10
5.2.2 编写web services接口函数 . ........................................................................................................... 10
5.2.3 编写php 接口 .................................................................................................................................. 19
,

1. 简介
1.1 目的
提供商户端交易网站通过中国农业银行网上支付平台提供的商户端开发软件包实现功能的编程指南。
1.2 功能描述
按照本编程指南所描述的标准,商户交易网站可以呼叫调用,支持功能包括签约、解约请求、挂单、撤单交易、实时成交、追加货款交易、确认付款交易、退货交易、批量撤单、批量成交、批量交易结果查询、到期支付,并且具备接收信用支付平台结果响应等功能。
接口采用数字证书的方式来保证商户与信用支付平台间的身份验证、中间信息传递的完整性,以便进行电子商务安全当中非常重要的交易身份辨识、不可抵赖、防止篡改等功能。
1.3 总体架构图




消费者
,

2. 接口开发软件包说明
银行提供的接口开发软件包 TrustPayClient-MARKET-PHP-Vx.x.x.zip(x.x.x 为接口开发软件包的版本号)包含下列文档。



3. 安装步骤
3.1 安装前检查
1、本接口软件包采用JDK 1.4 标准,php5标准,请检查已经安装了php5和jdk1.4或以上版本的jvm 。
3.2 系统配置
本文档以jdk1.5.0_18版本为JVM ,jakarta-tomcat-5.0.28作为Web Services服务器,
axis1.3作为SOAP 解析引擎为例,介绍如何在linux 平台下构建商户端Web Services服务器环境及部署接口应用。
1、下载jakarta-tomcat-5.0.28,解压缩后放置安装目录下,下载axis-src-1_3,将axis 文件夹放入$CATALINA_HOMEwebapps目录下。
注:均已提供在“供参考的Tomcat 应用服务器”中。 2、安装jdk1.5.0_18。在catalina.sh 中设置环境变量: export JAVA_HOME=/opt/IBM/was6admin/jdk1.5.0_18(根据实际安装路径来设置) export JAVA_OPTS=" -Xms256m -Xmx1024m" 3、在$CATALINA_HOMEbin下命令行方式下,键入:./catalina.sh start启动服务器,然后在浏览器中键入地址http://127.0.0.1:8080/axis/,查看能否正常启动。
3.3 Web Services接口应用配置
1、将银行提供的接口开发软件包TrustPayClient-MARKET-PHP-Vx.x.x.zip (x.x 为接口开发软件包的版本号)解压缩到商户自定的安装目录中。
2、请参考《农行网上支付平台 -商户使用手册 V1.0》登录网上支付平台下载商户交易证书,并将商户交易证书保存到服务器的硬盘或签名服务器中。
3、将商户的证书文件夹Certificate 放入$CATALINA_HOMEbin目录下,包括商户服务器证书*.pfx,农行根证书abc.truststore(生产环境证书,测试环境证书为abctest.truststore) 和支付平台证书TrustPay.cer (生产环境证书,测试环境证书为TrustPayTest.cer) 。
4、将ABCMerchantMarket.properties 文件放置到$CATALINA_HOMEwebappsaxisWEB-INFclasses目录下,该文件包含银行端访问地址,商户id, 相关证书路径,证书密码的配置,日志路径等。商户需要注意进行正确的配置(具体参考配置文件说明)。将java 接口包EMarketClient-Vx.x.x.jar 文件放入$CATALINA_HOMEwebappsaxisWEB-INFlib下。
5、将Web Services接口包WebServices_market_php_vx.x .jar 放入
,

$CATALINA_HOMEwebappsaxisWEB-INFlib下。在lib 下加入包log4j-1.2.8.jar ,dom4j-
1.6.1.jar ,jsse.jar ,commons-httpclient-3.0.1.jar ,commons-codec-1.3.jar 。
6、将Web Services配置文件server-config.wsdd 放入
$CATALINA_HOMEwebappsaxisWEB-INF中。
7、修改$CATALINA_HOMEwebappsaxisWEB-INF的web.xml 文件,添加log4j 初始化的servlet 配置,并在该目录下建立文件夹config ,放置log4j.properties 配置文件(该文件中,可以指定web services段代码日志输出格式及输出地址)。这里我们默认的日志是放在
$CATALINA_HOMElogs下。
8、重新启动tomcat 应用服务器。 9、通过php 调用web services接口,从而与农行电子商务系统进行交互。 注:以上 配置均已提供在“供参考的Tomcat 应用服务器”中,以供参考。
3.4 配置测试应用
1、配置WebApp ,指向接口软件包安装目录�mo 。 2、开启浏览器进入 ,确定接口软件包是否已正确安装及配置。
,

4. 配置文件说明



5. 范例交易说明
在java 接口的相关说明文档中,已经给出了如何利用农行提供的java 接口包进行商户接口开发的说明,请参考“信用平台商户接口编程指南-Java_Edition-V2.1.0.doc”。php 商户由于不能直接在程序中调用农行java 接口,所以需要通过一个中间件间接调用农行java 接口,本文档以交易市场中典型的签约和解约交易为例,介绍如何进行对农行java 接口包的间接调用。
注意:由于php 系统商户接口开发是对java 接口包进行的一个封装调用,所以商户在开发过程中,需要首先熟悉java 接口包的使用,运行java 接口包中的demo 页面。
5.1 交易流程
本节将说明商户交易平台如何与网上支付平台通信,来完成交易的过程。
5.1.1 Web Services技术的引入
由于php 商户在php 程序中不能直接调用农行提供的java 接口包,所以我们需要一种机制使得可以在php 程序中间接调用java 接口包。Web Services技术就可以提供这样一种功能。
Web Services技术是由业界领袖IBM 、Microsoft 等公司倡导使用,并由国际标准组织W3C 、ws-i 等制定了SOAP 、WSDL 等协议和规范,使得Web Services技术可以将已有的功能代码进行封装发布,凡遵循Web Services技术规范的其他平台和程序都可以通过SOAP 协议进行访问。所以,将农行java 接口利用Web Services技术进行功能封装,就可以在php 程序中进行跨平台、跨语言访问。
下面,本文档将交易市场中常用的签约解约功能进行Web Services封装,并通过php 程序进行跨平台调用访问,商户开发人员可以参考这两支交易,进行其它接口功能的开发。
5.1.2 签约和解约交易
签约或解约交易因为需要三方的配合(客户、商户交易网站、信用支付平台),且交易流程是分两阶段进行,所以商户交易平台针对每个交易需要开发两个主要的程序才能完成整个签约或解约交易流程,此两支程序为“签约或解约请求程序”及“签约或解约结果接收程序”。交易流程如下图所述:
,

