`
qinhanbin
  • 浏览: 12797 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于UPP中与支付渠道的接口和参数信息

阅读更多

JAVA接口安装与初始化

chinapay.jar安装到服务器的classpath下。将提供给SPMerPrk.keyPgPubk.key文件复制到服务器上可以访问的路经下,例如/app/usr/chinapay/keys

初始化key文件。方法如下:

chinapay.PrivateKey key=new chinapay.PrivateKey();

chinapay.SecureLink t;

boolean flag;

flag=key.buildKey(MerId,0,"app/usr/chinapay/keys/MerPrk.key");

if (flag==false) {

System.out.println("build key error!");

  return;

}

t=new chinapay.SecureLink (key)


数据签名函数signOrder

方法说明:

public String signOrder(String MerId, String OrdId, String TransAmt, String CuryId, String

TransDate, String TransType)

参数说明:

String MerId - 商户号,长度为15 个字节的数字串,由ChinaPay 或清算银行分配。

String OrdId - 订单号,长度为16 个字节的数字串,由商户系统生成,失败的订单号允

许重复支付。

String TransAmt - 交易金额,长度为12 个字节的数字串,例如:数字串"000000001234"

表示12.34 元。

String CuryId - 货币代码, 长度为3 个字节的数字串,目前只支持人民币,取值为"156"

String TransDate - 交易日期,长度为8 个字节的数字串,表示格式为:YYYYMMDD

String TransType - 交易类型,长度为4 个字节的数字串,取值范围为:"0001""0002"

其中"0001"表示消费交易,"0002"表示退货交易。

返回值:

String CheckValue[256] - NetPayClient 根据上述输入参数生成的商户数字签名,长度

256 字节的字符串。

支付请求发送方式

○ 使用说明

商户在向消费者发送订单确认页面之前, 调用signOrder函数或方法产生订单签名

CheckValue),然后生成订单确认页面(由SP生成),供消费者再次确认订单的内容,并允许消费者选

择支付或取消订单。订单确认页面中表单(FORM)的具体例子如下(注意各字段的大小写)

<form action="http://payment.chinapay.com:8081/pay/TransGet" METHOD=POST>

<input type=hidden name="MerId" value="123451234512345">

<input type=hidden name="OrdId" value="0000000000000001">

<input type=hidden name="TransAmt" value="000000001234">

<input type=hidden name="CuryId" value="156">

<input type=hidden name="TransDate" value="20000315">

<input type=hidden name="TransType" value="0001">

<input type=hidden name="Version" value="20040916">(接口版本号)

<input type=hidden name="BgRetUrl " value="http://www.XXX.com/pay/payback1.php"

>(后台交易接收URL,可选,长度不要超过80 个字节)

<input type=hidden name="PageRetUrl" value="http://www.XXX.com/pay/payback2.php"

>(页面交易接收URL,可选,长度不要超过80 个字节)

<input type=hidden name="GateId" value="0001">(支付网关号,可选)

<input type=hidden name="Priv1" value="Memo">(商户私有域,可选,长度不要超过

60 个字节)

<input type=hidden name="ChkValue" value="X…X">256 字节长的ASCII 码)

</form>

注:其中GateId Priv1 为可选项,分别表示 “支付网关号”和“保留字段”。 如填

GateId(支付网关号),则消费者将直接进入支付页面,否则进入网关选择页面。具体网

关见表1Priv1 为商户私有域,商户通过此字段向Chinapay 发送的信息,Chinapay 依原样

填充返回给商户。当使用版本号20040916”时,BgRetUrl PageRetUrl 必须至少填写一

项,也就是说,此两项URL 不能同时为空。

1 Chinapay 支持的网关列表

网关号 网关名称

0001 中国银联

0005 工商银行

0007 招商银行

0008 农业银行(电子支付卡)

0009 兴业银行

0010 中国建设银行

 

 

验证交易应答函数verifyTransResponse

方法说明:

public boolean verifyTransResponse(String MerId, String OrdId, String TransAmt, String

CuryId, String TransDate, String TransType, String OrderStatus, String CheckValue)

参数说明:

String MerId - 商户号,长度为15 个字节的数字串,由ChinaPay 或清算银行分配。

String OrdId - 订单号,长度为16 个字节的数字串,由商户系统生成,失败的订单号允

许重复支付。

String TransAmt - 交易金额,长度为12 个字节的数字串,例如:数字串"000000001234"

表示12.34 元。

String CuryId - 货币代码, 长度为3 个字节的数字串,目前只支持人民币,取值为"156"

String TransDate - 交易日期,长度为8 个字节的数字串,表示格式为: YYYYMMDD

String TransType - 交易类型,长度为4 个字节的数字串,取值范围为:"0001""0002"

其中"0001"表示消费交易,"0002"表示退货交易。

String OrderStatus - 交易状态,长度为4 个字节的数字串。0001代表成功。

String CheckValue - 校验值,即ChinaPay 对交易应答的数字签名,长度为256 字节的字

符串。

返回值:

true - 表示成功,即该交易应答为ChinaPay 所发送,商户根据“交易状态”进行后续处

理;否则表示失败,即无效应答,商户可忽略该应答或记入“垃圾箱”。

 

说明:在银联支付时,订单号4是自定义的,可以根据sp业务的不同,头四位不同,

例如ET业务为4000,邮件业务为5000,实物销售业务为6000等。此外订单号的5-9位必须为商户号的最后5位。

分享到:
评论

相关推荐

    DSP芯片的uPP接口与FPGA通信代码

    在这个特定的案例中,我们关注的是TMS320C6748 DSP通过其内置的Ultra Parallel Port (uPP)接口与FPGA进行通信的实现。下面我们将深入探讨uPP接口的特点、DSP与FPGA的通信流程,以及可能涉及到的相关代码结构。 1. *...

    UPP接口双向通信功能

    一种基于FPGA的UPP接口代码实现connect_debug_port u_ila_0/probe45 [get_nets [list tx2_lock]] create_debug_port u_ila_0 probe set_property PROBE_TYPE DATA_AND_TRIGGER [get_debug_ports u_ila_0/probe46] ...

    DSP芯片的uPP接口与FPGA通信代码+omapl38双核通信 UPP通信

    1. **配置和初始化**:在DSP端,需要对uPP接口进行初始化,设置合适的时钟、数据宽度、地址空间等参数,确保与FPGA的接口匹配。 2. **数据传输协议**:理解并正确实现uPP协议,包括读写操作的时序、握手信号(如ACK...

    OMAPL138中DSP的UPP接口代码

    其中,通用并行接口(Universal Parallel Port, UPP)是OMAPL138中的一个重要组成部分,用于高速数据传输,例如图像和视频数据。 UPP接口设计用于连接外部设备,如摄像头、LCD屏幕或者闪存存储器,提供了一个灵活的...

    upp_test_tms320c6657upp_

    在这款处理器中,通用并行端口(UPP)是一个重要的外设接口,它提供了高速的数据传输能力,适用于多种外设连接。本资料包“upp_test_tms320c6657upp”正是针对TMS320C6657的UPP模块进行调试及应用的实践资料,包含了...

    uPP_A_Receive.rar_DSP UPP_UPP_UPP通信_a-upp_d-upp - 2017-2019

    在实现UPP通信的过程中,DSP的硬件特性,如并行处理单元和高速内存接口,是关键。通过精心设计的算法,可以充分利用这些硬件资源,达到最佳的性能。例如,使用FFT(快速傅里叶变换)进行频域分析,可以有效检测和滤...

    DSP通过自带的uPP并行口与FPGA通信,uPP支持半双工通信,DSP型号为TMS320C6748

    DSP通过自带的uPP并行口与FPGA通信,uPP支持半双工通信,DSP型号为TMS320C6748。FPGA将前端采集到的原始数据发送给DSP,DSP进行处理后将计算后的结果传回FPGA,已经汇总,请大家参考。

    J2ee upp网站源代码

    - **支付接口文件**:对接不同支付渠道的SDK或API,处理支付请求和响应。 - **测试类**:用于单元测试和集成测试,确保代码功能的正确性。 通过对这些源代码的学习,开发者可以深入了解如何构建一个完整的支付系统...

    TMS320C6748 DSP视频教程-12-3-通用并行端口 uPP.rar

    在这一章节中,我们将详细讨论uPP与外部设备的连接和通信方式。uPP可以作为主设备驱动多种外设,例如ADC、DAC、LED控制器等。驱动设计包括配置寄存器、建立中断服务程序、处理数据同步等问题。此外,还会讲解如何...

    upp项目(基于SSH框架)

    "upp项目"是一个基于SSH(Struts2、Spring和Hibernate)框架构建的统一支付平台,采用了典型的B/S(Browser/Server)架构。SSH是Java Web开发中的一个经典组合,广泛应用于企业级应用系统中,提供了高效、灵活和可...

    upp用户手册

    根据提供的文件信息,本文将对“upp用户手册”进行详细解析,主要围绕c6657 DSP中的Universal Parallel Port(uPP)展开介绍。 ### 一、简介 #### 1.1 uPP 外设的目的 uPP(Universal Parallel Port)是一种高...

    upp项目之一

    在ULTIMATE++中,`.lay`文件用于存储界面设计的布局信息,包括控件的位置、大小、属性等,使得开发者可以方便地管理和调整用户界面。 5. `GuiLock.upp`:这个名字可能表示一个特定的类或模块,专门处理GUI(图形...

    Lib_Demo.rar_DEMO_UPP_dsp6655_fpga图像处理_upp总线

    3. **UPP接口设计**:设计UPP接口电路,确保DSP6655与FPGA之间的数据传输正确无误。 4. **DSP编程**:编写DSP端的驱动程序和控制逻辑,控制UPP总线的读写操作。 5. **测试与调试**:通过硬件测试板和仿真工具进行...

    DSP端UPP数据接收代码.zip

    通用并行端口外设(uPP)是一种专用数据线和最小的控制信号的多通道高速并行接口。设计用于每通道高达16bits数据宽度的ADCs、DACs传输,也可以用于FPAG和其他uPP外设。它可以工作在接收模式下,发射模式,或双工模式...

    GBT7714-2005NLang_Upp.bst GBT7714-2005NLang_Up.bst GBT7714-2005NLang.bst

    在Word中使用Bibtex4word自动制作参考文献,三种作者名显示大小写的bst文件。将bst文件放到MiKTeX的...GBT7714-2005NLang_Upp.bst 就在Bibtex4word刷子中输入GBT7714-2005NLang_Upp/nsch^p,可以中英文显示,不乱码。

    upp_ThreadFileSearchDemo.rar

    首先,我们来看标题中的"upp_ThreadFileSearchDemo.rar",这是一个压缩包文件,包含了项目的所有源代码和资源。upp可能指的是UPP(Unicode Portable Programmers' Package),一种 Delphi 的扩展库,支持Unicode编程...

    UPP-crx插件

    在UPP-crx插件中,用户可以利用正则表达式来定义复杂的数据查找规则,从而精确地抓取网页中的特定数据。正则表达式的运用需要一定的学习和理解,但一旦掌握,就能灵活处理各种格式的数据,无论是电话号码、邮箱地址...

    “ Tally-Ho!”:UPP和2010年横向并购指南-研究论文

    此外,《准则》显然愿意接受UPP的筛选,但没有明确考虑如何将合并竞争者不可避免的积极UPP与动态供应响应或效率相权衡,这值得关注。 在UPP屏幕上消除这种潜在的阻力,可以使代理商在实践中具有巨大的潜力,可以...

Global site tag (gtag.js) - Google Analytics