Magento 银联新接口插件 以及支付宝即时到账插件 本站开放出售 请联系站长
新一代商户接入用户手册(Version: 2.7)62 页 不得不不说 银联的说说明文档挺详细的 还有 银联的技术服务很到位 邮件回复的挺及时的
然后 DEMO 虽然看起来 挺简陋 不过功能都挺实用的
Magento 1 银联新接口支付插件说明
必要地址说明
获得密匙文件等绝对路径 http://youhostname.com/Chinapay?key=授权码
密匙及配置文件存放路径 app\code\community\Chinapay\Chinapay\Model\WeicotPay\ini
密匙及配置文件存放路径 app\code\community\Chinapay\Chinapay\Model\WeicotPay\ini
支付插件配置
1.将后台导出的证书.pfx 放入到ini 文件夹内 关于银联证书导出 请看银联证书导出项
2.配置 ini 文件夹内 security.properties 文件中的
-证书地址 sign.file= [证书地址 可由 http://youhostname.com/Chinapay?key=授权码 获得]
-证书密码 sign.file.password
3.登录后台 系统->配置->支付方式->银联支付->选择启用
4.配置完成
银联证书导出项
-银联说明文档在开户信里面,如果没有就联系银联运营中心,
-证书.pfx 请自己到银联后台导出
Magento 2 开发中。。。。
新接口地址
测试环境请求地址: http://newpayment-test.chinapay.com/CTITS/service/rest/forward/syn/000000000065/0/0/0/0/0 ? 生产环境请求地址: https://payment.chinapay.com/CTITS/service/rest/forward/syn/000000000065/0/0/0/0/0 ? 0403消费撤销、0203预授权撤销、0204预授权完成撤销、0202预授权完成的交易接收地址如下: ? 测试环境请求地址: http://newpayment-test.chinapay.com/CTITS/service/rest/page/nref/000000000017/0/0/0/0/0 ? 生产环境请求地址: https://payment.chinapay.com/CTITS/service/rest/page/nref/000000000017/0/0/0/0/0
目录结构 及支付流程
/**
* WeiCot Framework
* User: ajiang
* WebSite: WWW.WEICOT.COM
* Date: 2016/07/28 0006
* Time: 17:41
* ChianPayTest
*/
//D:\newcov\htdocs\dev\chinapay_demo\cert -证书存放的地儿
//D:\newcov\htdocs\dev\chinapay_demo\config 配置 文件
//D:\newcov\htdocs\dev\chinapay_demo\cert -证书存放的地儿
//http://dev.com/chinapay_demo/page/pay/b2cPay.php 新接支付表单 提交后 交由 sign.php 签名处理
// http://dev.com/chinapay_demo/sign.php 签名处理 处理完后 跳转到 /page/pay/b2cPaySend.php 提交表单
//引用了 以下方法
include 'util/common.php'; //数据处理
include 'util/SecssUtil.class.php'; //签名方法
$secssUtil = new SecssUtil();
if (! isEmpty($transResvedStr)) {
$transResvedStr = $secssUtil->decryptData($transResvedStr);
$sendMap[transResveredKey] = $transResvedStr;
}
if (! isEmpty($cardResvedStr)) {
$cardResvedStr = $secssUtil->decryptData($cardResvedStr);
$sendMap[cardResveredKey] = $cardResvedStr;
}
$securityPropFile = $_SERVER['DOCUMENT_ROOT'] . "/chinapay_demo/config/security.properties";
$secssUtil->init($securityPropFile);
$secssUtil->sign($sendMap);
$sendMap[signatureField] = $secssUtil->getSign();
//http://dev.com/chinapay_demo/page/pay/b2cPaySend.php 进行支付处理
security.properties 文件的一些基础配置
sign.file=D:\newcov\htdocs\dev\chinapay_demo\cert\从后台导出的证书.pfx 建议绝对路径 sign.file.password=证书密码 sign.cert.type=PKCS12 sign.invalid.fields=Signature,CertId verify.file=D:\newcov\htdocs\dev\chinapay_demo\cert\cp_test.cer signature.field=Signature log4j.name=cpLog
注意事项
注意这项[Signature] 如果未配置 者会出现 :交易失败! 错误信息: 报文非空字段为空值。。
| 签名 | Signature | Y | 商户报文签名信息,报文中的所有字段都参与签名(Signature除外) |
相关
sign.file=D:\newcov\htdocs\dev\chinapay_demo\cert\从后台导出的证书.pfx 建议绝对路径 sign.file.password=证书密码
没有申请交易证书,或交易地址提交错误,交易失败!错误信息:证书未配置
这个报错通常有两个原因,一是没有申请交易证书,二是交易地址提交错误,测试地址和正式地址搞错了。 正式交易证书 用正式地址
附签名验证程序
<?php
// require 'SecssFileService.class.php';
require 'util/SecssUtil.class.php';
$securityPropFile="D:/newcov/htdocs/dev/chinapay_demo/config/security.properties"; //配置文件
// $secssUtil = new SecssFileService();
$secssUtil = new SecssUtil();
$secssUtil->init($securityPropFile);
$file="D:/newcov/htdocs/dev/chinapay_demo/config/test.txt"; //测试数据
echo "sign start time".date('y-m-d h:i:s',time())."\r\n";
$secssUtil->signFile($file);
if("00"===$secssUtil->getErrCode()){
echo "文件签名成功,errcode=[" .$secssUtil->getErrCode()."]\r\n";
}else{
echo "文件签名失败,errcode=[" .$secssUtil->getErrCode()."]\r\n";
}
echo "sign end time".date('y-m-d h:i:s',time())."\r\n";
echo "--------------------------------------\r\n";
echo "verify start time".date('y-m-d h:i:s',time())."\r\n";
$secssUtil->verifyFile($file);
if("00"===$secssUtil->getErrCode()){
echo "文件验签成功,errcode=[" .$secssUtil->getErrCode()."]\r\n";
}else{
echo "文件验签失败,errcode=[" .$secssUtil->getErrCode()."]\r\n";
}
echo "verify end time".date('y-m-d h:i:s',time())."\r\n";
?>
转载请注明:(●--●) Hello.My Weicot » 银联新一代商户接入新接口-支付 以 Magento银联新接口开发为例
