1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > 银联支付测试环境

银联支付测试环境

时间:2022-01-13 21:18:07

相关推荐

银联支付测试环境

可参考:/52itstyle/spring-boot-pay

银联支付提交原理:

封装支付请求参数将参数验证签名,以html 表单形式提交给银联支付接口。(以html表单形式提交有什么好处、方便提交参数)

验证签名原理:MD5 加密加盐 不可逆

具体流程:

把所有参试的交易数据、签名(验证签名作用:防止数据被篡改)、商户信息参试进行封装生成一个html表单然后进行自动提交,就会带参数跳转到银联支付页面,

参试封装表单地址:http://127.0.0.1:8080/ACPSample_B2C/form_6_2_FrontConsume

生成的html

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body><form id="pay_form" action="https://gateway./gateway/api/frontTransReq.do" method="post"><input type="hidden" name="bizType" id="bizType" value="000201" /><input type="hidden" name="txnSubType" id="txnSubType" value="01" /><input type="hidden" name="orderId" id="orderId" value="0723101231" /><input type="hidden" name="backUrl" id="backUrl" value="http://222.222.222.222:8080/ACPSample_B2C/backRcvResponse" /><input type="hidden" name="signature" id="signature" value="e9gnu8NQBft4jyWp/+yzNSvQzFWutHQ0Vp2NRbjlCs1dIA0eKBaRCYTcKw2X1tRsHcV1BL72NcaGcosAw844O8e9XN5hRzKxV54F3V2Dzn4Kwjs/5RhR7XMS1/mlCdxg3PvaZAuqYoSiM8MVJchTh8O4HI5bq0QnhRwPTVmbrxCQYCCGOHaLTW6FTLpp0qyeA2R9vN763kdeMWE7zMMqdNtaUCD20IdbJVzjJ6zMOcwGHMu04RajT6O8GHQsmTqNfJGdrwjszJa/fnz6MIBDWQfP9DXc9lXe76XXKE+oPK/zY9z2U2sjuF23YOs3kNH4NugxcM6gmD4oSglJtmJ8gg==" /><input type="hidden" name="txnType" id="txnType" value="01" /><input type="hidden" name="channelType" id="channelType" value="07" /><input type="hidden" name="frontUrl" id="frontUrl" value="http://localhost:8080/ACPSample_B2C/frontRcvResponse" /><input type="hidden" name="certId" id="certId" value="68759663125" /><input type="hidden" name="encoding" id="encoding" value="UTF-8" /><input type="hidden" name="version" id="version" value="5.1.0" /><input type="hidden" name="accessType" id="accessType" value="0" /><input type="hidden" name="txnTime" id="txnTime" value="0723101231" /><input type="hidden" name="merId" id="merId" value="777290058110048" /><input type="hidden" name="payTimeout" id="payTimeout" value="0723102956" /><input type="hidden" name="currencyCode" id="currencyCode" value="156" /><input type="hidden" name="signMethod" id="signMethod" value="01" /><input type="hidden" name="txnAmt" id="txnAmt" value="100000" /><input type="hidden" name="riskRateInfo" id="riskRateInfo" value="{commodityName=测试商品名称}" /></form></body><script type="text/javascript">document.all.pay_form.submit();</script></html>

银联支付接口

/tjweb/acproduct/dictionary

下载四个测试证书:/ajweb/account/testPara

实现步骤:

下载对应的银联demo创建D:\certs目录 下载对应测试证书,放入D:\certs

测试账号信息:

银联会自动根据卡号识别是哪个行下的卡

卡号:6216261000000000018

姓名:全渠道

身份证号码: 341126197709218366

验证码:111111

证书下载后保存到D盘下的certs中:

证书地址:

链接:/s/1EIuiBFIxKF-_iumCYgzHQg

提取码:rf9g

web项目地址:

链接:/s/1ZfwoiLfDc6d7ucpjUv8oZg

提取码:n13j

项目需要部署到tomcat中运行:http://127.0.0.1:8080/ACPSample_B2C

代码说明:

Form_6_2_FrontConsume类:

是把需要发送给银联的参数封装成html形式的表单,提交跳转至银联。

FrontRcvResponse类:

支付完成后点击返回商家,设置跳转页面。

表结构

SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for payment_channel-- ----------------------------DROP TABLE IF EXISTS `payment_channel`;CREATE TABLE `payment_channel` (`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',`CHANNEL_NAME` varchar(32) NOT NULL COMMENT '渠道名称',`CHANNEL_ID` varchar(32) NOT NULL COMMENT '渠道ID',`MERCHANT_ID` varchar(32) NOT NULL COMMENT '商户id',`SYNC_URL` text NOT NULL COMMENT '同步回调URL',`ASYN_URL` text NOT NULL COMMENT '异步回调URL',`PUBLIC_KEY` text COMMENT '公钥',`PRIVATE_KEY` text COMMENT '私钥',`CHANNEL_STATE` int(11) DEFAULT '0' COMMENT '渠道状态 0开启1关闭',`REVISION` int(11) DEFAULT NULL COMMENT '乐观锁',`CREATED_BY` varchar(32) DEFAULT NULL COMMENT '创建人',`CREATED_TIME` datetime DEFAULT NULL COMMENT '创建时间',`UPDATED_BY` varchar(32) DEFAULT NULL COMMENT '更新人',`UPDATED_TIME` datetime DEFAULT NULL COMMENT '更新时间',`CLASS_ADDRES` varchar(255) DEFAULT NULL COMMENT '类全路径-设计模式使用',PRIMARY KEY (`ID`,`CHANNEL_ID`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='支付渠道 ';-- ------------------------------ Records of payment_channel-- ----------------------------INSERT INTO `payment_channel` VALUES ('1', '银联支付', 'yinlian_pay', '777290058171604', 'http://localhost:8080/ACPSample_B2C/frontRcvResponse', '/ACPSample_B2C/backRcvResponse', null, null, '0', null, null, null, null, null, 'com.strategy.impl.YinLianPayStrategyImpl');INSERT INTO `payment_channel` VALUES ('2', '支付宝', 'ali_pay', '777666655522521', 'test', 'test', null, null, '0', null, null, null, null, null, 'com.strategy.impl.AliPayStrategyImpl');

SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for payment_transaction-- ----------------------------DROP TABLE IF EXISTS `payment_transaction`;CREATE TABLE `payment_transaction` (`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',`PAY_AMOUNT` int(11) NOT NULL COMMENT '支付金额',`PAYMENT_STATUS` int(11) NOT NULL DEFAULT '0' COMMENT '支付状态 0待支付1已经支付2支付超时3支付失败',`USER_ID` int(11) NOT NULL COMMENT '用户ID',`ORDER_ID` varchar(32) NOT NULL COMMENT '订单号码',`REVISION` int(11) DEFAULT NULL COMMENT '乐观锁',`CREATED_BY` varchar(32) DEFAULT NULL COMMENT '创建人',`CREATED_TIME` datetime DEFAULT NULL COMMENT '创建时间',`UPDATED_BY` varchar(32) DEFAULT NULL COMMENT '更新人',`UPDATED_TIME` datetime DEFAULT NULL COMMENT '更新时间',`PARTYPAY_ID` varchar(32) DEFAULT NULL,`PAYMENT_ID` varchar(32) DEFAULT NULL COMMENT '支付id',`COMMODITY_NAME` varchar(32) DEFAULT NULL COMMENT '商品名称/描述',PRIMARY KEY (`ID`)) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8 COMMENT='支付交易 ';

SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for payment_transaction_log-- ----------------------------DROP TABLE IF EXISTS `payment_transaction_log`;CREATE TABLE `payment_transaction_log` (`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',`SYNCH_LOG` text COMMENT '同步回调日志',`ASYNC_LOG` text COMMENT '异步回调日志',`CHANNEL_ID` int(11) DEFAULT NULL COMMENT '支付渠道ID',`TRANSACTION_ID` int(11) DEFAULT NULL COMMENT '支付交易ID',`REVISION` int(11) DEFAULT NULL COMMENT '乐观锁',`CREATED_BY` varchar(32) DEFAULT NULL COMMENT '创建人',`CREATED_TIME` datetime DEFAULT NULL COMMENT '创建时间',`UPDATED_BY` varchar(32) DEFAULT NULL COMMENT '更新人',`UPDATED_TIME` datetime DEFAULT NULL COMMENT '更新时间',`untitled` varchar(32) DEFAULT NULL,PRIMARY KEY (`ID`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='支付交易日志表 ';

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。