银联支付 Asp.Net 对接开发内容简介

银联对接开发主要包含测试环境以及生产环境两部分。

其中程序开发部分测试以及生产是相同的。

不同的是,测试环境与生产环境请求支付的Url地址,以及分别使用的证书不同。

一、配置部分

  1,测试环境证书获取 

      银联测试平台地址:

      https://open.unionpay.com/ajweb/account/testPara

      (证书需要根据注册的用户名密码登录后在银联测试平台中得到)

  2,生产环境的证书获取

      私钥:商户注册时,银联会发一封密钥兑换邮件,根据邮件中的兑换码,到邮件中所提供的网址去兑换私钥。

      公钥:测试平台中提供生产环境公钥的下载,商户注册时,银联给提供的Demo中也包含公钥。

  3,生产环境配置文件

      主要包含3个内容:

      1,密钥的物理地址(需要给目录文件指定读写权限)

      2,支付跳转请求地址

      3,交易结果回调地址

      url地址以及证书使用的配置如下(当前配置信息的支付跳转地址为生产环境的地址):

复制代码
    <!-- ##########################交易发送地址配置#############################-->
    <!--######(以下配置为PM环境:入网测试环境用,生产环境配置见文档说明)#######-->
    <!-- 签名证书路径 acp_test.sign.pfx-->
    <add key="sdk.signCert.path" value="E:***生产环境证书*******.zhegnshu.pfx" />
    <!-- 签名证书密码 -->
    <add key="sdk.signCert.pwd" value="******" />
    <!-- 签名证书类型 -->
    <add key="sdk.signCert.type" value="PKCS12" />
    <!-- 加密证书路径 -->
    <add key="sdk.encryptCert.path" value="E:***生产环境证书acp_prod_verify_sign.cer" />
    <!-- 验签证书目录 -->
    <add key="sdk.validateCert.dir" value="E:***生产环境证书" />
    <!-- 前台交易地址 -->
    <add key="sdk.frontTransUrl" value="https://gateway.95516.com/gateway/api/frontTransReq.do" />
    <!-- 后台交易地址 -->
    <add key="sdk.backTransUrl" value="https://gateway.95516.com/gateway/api/backTransReq.do" />
    <!-- 交易状态查询地址 -->
    <add key="sdk.singleQueryUrl" value="https://gateway.95516.com/gateway/api/queryTrans.do" />
    <!-- 文件传输类交易地址 -->
    <add key="sdk.fileTransUrl" value="https://filedownload.95516.com/" />
    <!-- 批量交易地址 -->
    <add key="sdk.batTransUrl" value="https://gateway.95516.com/gateway/api/batchTrans.do" />
    <!-- 有卡交易地址 -->
    <add key="sdk.cardRequestUrl" value="https://gateway.95516.com/gateway/api/cardTransReq.do" />
    <!-- app交易地址 手机控件支付使用该地址-->
    <add key="sdk.appRequestUrl" value="https://gateway.95516.com/gateway/api/appTransReq.do" />
    <add key="union_frontUrl" value="http://回调域名/UnionPay/PaySucess.aspx"/>
    <add key="union_backUrl" value="http://回调域名/UnionPay/BackRcvRespones.aspx"/>
<add key="ifValidateRemoteCert" value="false" /> <!--##########################以下为缴费产品的配置,其他产品接入时可无视#############################--> <!-- 前台交易地址 --> <add key="sdk.jf.frontTransUrl" value="https://gateway.95516.com/gateway/api/frontTransReq.do" /> <!-- 后台交易地址 --> <add key="sdk.jf.backTransUrl" value="https://gateway.95516.com/gateway/api/backTransReq.do" /> <!-- 交易状态查询地址 --> <add key="sdk.jf.singleQueryUrl" value="https://gateway.95516.com/gateway/api/queryTrans.do" /> <!-- 有卡交易地址 --> <add key="sdk.jf.cardRequestUrl" value="https://gateway.95516.com/gateway/api/cardTransReq.do" /> <!-- app交易地址 手机控件支付使用该地址--> <add key="sdk.jf.appRequestUrl" value="https://gateway.95516.com/gateway/api/appTransReq.do" /> <!--##########################log4net配置#############################-->
复制代码

二、开发部分

  1,引用类库

    https://github.com/imcac/UnionPay

  2,编码

      window.location.href = "/发起页面_UnionPay/UnionPay.aspx?PayCash=" + 金额;

  3,回调

    在web.config中修改回调地址的域名,将github上的[回调页面_UnionPay]拷贝至项目中,修改其中对不同项目数据存取的代码。

原文地址:https://www.cnblogs.com/zxtceq/p/9041885.html