初次接触银联支付

1、注册

银联开发平台 https://open.unionpay.com
平台分为三个角色

  • 我是商户
  • 我是机构
  • 我是开发者

第一反应我是开发者就直接申请我是开发者的角色。但并没有如愿以偿如下图:

暂不支持申请、暂不支持测试 这就尴尬了。为啥各种不支持呢?正在开发中? 带着这个疑问以及想占个坑的思想就注册了一个账号同时也提交了一个工单但客服没有处理可能是过节的原因吧。

生活不能永停留在无尽的等待当中需要我们去勇敢的尝试新的事物。so 新的事物新的探索就开始了。我就申请我是商户的角色

注册可以使用邮箱以及手机。验证了手机或者邮箱之后填写商户信息以及账号的登录密码就可以OK了。

设置密码是需要下载密码控件的。如下图是登录时需要密码控件。MAC推荐使用Safari 如果Window推荐使用IE或者使用QQ浏览器大厂的Chrome 怎么使用兼容模式作者暂时没有研究。有了解的可以在文章下留言告知感激不尽。

2、获取测试参数

这里我们使用最新版本的证书5.1.0,大家可以把涉及到的证书都下载到本地后面会使用到。下面是一些测试卡号的信息且用且珍惜

具体的测试资料我会放到我的开源项目IJPay上大家有需要可以前去围观。https://github.com/Javen205/IJPay
https://github.com/Javen205/IJPay-Demo

3、添加测试产品

我的产品点击未测试再点击右边的开始测试即可添加测试产品。这里我贴两张示例图

4、下载官方实例

这里就拿网关支付为例。在第三步中添加了测试产品,点击产品的名称即可看到此页面。可以看到最下方有技术文档相关的链接如下图。

https://open.unionpay.com/ajweb/help/file/techFile?productId=1

这里将Java的实例ACPSample_B2C导入到Eclipse。

选择工作空间右键打开属性面板选择Import…

默认导入项目是有感叹号的。切勿紧张下面我们来一一解决哈。这里的感叹号出现的主要原因是JDK以及Tomcat与你本地默认的不匹配导致的。实例中使用的Tomcat为6.0、JDK为1.6.0的。这里我们修改为
Tomcat 8.0、JDK为1.8.0的如下图。

5、修改实例配置

实例中所有的支付URL以及证书等支付相关的参数都在acp_sdk.properties属性文件中。打开acp_sdk.properties属性文件一看卧槽乱码一堆乱码!!! 切勿冲动砸电脑。.propertie编码(乱码)解决之道

这里我们只需要修改这几个地方,且听我慢慢道来。
1、修改通知地址 acpsdk.backUrl以及acpsdk.frontUrl且必须外网能访问。外网如何访问到本地的URL呢?真是一个问题接一个问题。 问题解决之道10分钟搭建属于自己的ngork服务器,实现内网穿透

2、修改证书路径

acpsdk.signCert.path
acpsdk.encryptCert.path
acpsdk.middleCert.path
acpsdk.rootCert.path

3、修改实例中的商户号

实例中默认的商户号是777290058110048需要修改成我申请商户中的商户号。不修改也可以测试,但是正在测试中的产品测试进度一直是0%

6、尝试启动实例

实例是一个Servlet 的web项目。我想对Java web有一点了解的同学都应该知道怎么启动。

访问测试实例:http://localhost:8080/ACPSample_B2C/
我这使用的端口映射如下图:

后端通知日志有点多这里就不截图了,以上就是我首次使用银联支付的总结如有遗漏或者错误欢迎拍砖以及指点。

这些银联支付你了解多少呢?
目前我已测通网关支付产品 手机控件支付产品 手机WAP支付产品 B2B支付产品 并已经整合到我的开源项目IJPay中欢迎Start

推荐阅读
10分钟搭建属于自己的ngork服务器,实现内网穿透
微信H5支付
H5仿微信支付键盘
微信开发之扫码支付
微信开发之现金红包
Android版-微信APP支付
Android版-支付宝APP支付
支付宝Wap支付你了解多少?
支付宝支付-PC电脑网站支付
支付宝支付-提现到个人支付宝
支付宝支付-扫码支付详解
微信开发之扫码支付
支付宝支付-刷卡支付(条码支付)详解
微信开发之刷卡支付
微信开发之公众号支付
一张二维码集成微信、支付宝支付

时间: 2024-09-23 10:14:39

初次接触银联支付的相关文章

asp.net网站,无法跳转到银联支付页面

问题描述 网站以前都是可以正常跳转到银联支付页面支付的.近期不可以跳转了.能帮我分析一下是什么原因么?谢谢了 解决方案 解决方案二:这问题问了,谁知道你在问什么问题!~~解决方案三:呵呵你猜?解决方案四:引用1楼jrl5365的回复: 这问题问了,谁知道你在问什么问题!~~ 因为以前没接触过这个.所以不懂怎么问,能帮我分析一下吗?之所以跳转不过去,是什么原因呢?解决方案五:引用2楼liaoxing168的回复: 呵呵你猜? 因为以前没接触过这个.所以不懂怎么问,能帮我分析一下吗?之所以跳转不过去

初次接触:DirectDraw

第六章 初次接触:DirectDraw 本章,你将初次接触DirectX中最重要的组件:DirectDraw.DirectDraw可能是DirectX中最强大的技术,因为其贯穿着2D图形绘制同时其帧缓存层也是DirectX3D的基础.当然,DirectX8.0中DirectDraw已经完全集成到了DirectX3D里面.此外,如果你对DirectDraw深有了解,那将拥有创建任何DOS16/32类型的图形化程序的能力.DirectDraw是理解众多DirectX自身概念的钥匙.所以,听仔细了.

银联 支付-急需银联支付手机web版的demo

问题描述 急需银联支付手机web版的demo 最近公司需要在一个项目上加手机web银联支付,就是只能在uc上用的那个,网上比较少,官方只有文档,有木有人有demo借来参考一下? 更新: 后来未能完成手机wap银联支付,好像是当时银联没有wap的支付 解决方案 到https://open.unionpay.com/ajweb/index 下载 解决方案二: 楼主弄好了没啊 ,求帮忙发个例子啊 282674951@qq.com 解决方案三: 楼主弄好了没啊 ,求帮忙发个例子啊 282674951@q

接口-银联支付,PHP如何获取银联的流水号?跪求大神解答。

问题描述 银联支付,PHP如何获取银联的流水号?跪求大神解答. 解决方案 最近刚做完这块 ,如果还需要可以找我要源码. 解决方案二: 你直接调用api,有接口的.你自己查看对接文档. 解决方案三: 看看这个文档,对你有用http://www.360doc.com/content/14/0909/17/9200790_408206083.shtml 解决方案四: 看看这个文档,对你有用http://www.360doc.com/content/14/0909/17/9200790_40820608

android银联支付,请求报文错误[8100008]

问题描述 android银联支付,请求报文错误[8100008] 之前搞得银联支付,并且试用了没有问题. 但今天再用就在跳转时弹出对话框,显示: 请求报文错误[8100008] 我没有动过这一块的代码. 请大神指导 解决方案 Android-银联支付android银联支付android银联支付 解决方案二: 问下银联是不是改什么东西了?或者确认一下这个代码的意思 解决方案三: iOS同样遇到这个问题,楼主解决了吗 解决方案四: 是你们服务端改东西了吧 流程图说明: (1)用户在客户端中点击购买商

银联支付接口+支付宝接口统一支付功能

这个demo发出来已经比较久了,后面发现陆续还有同学找到我,我这里说下现在的情况.这个接口中的银联支付接口实际也是走的支付宝接口,不需要单独申请银联了.但是!支付宝的这个接口已经下架了,以前已经接入的此接口还可以照常使用,新接入的不能再使用银联接口.===================这个model将支付宝和银行支付统一到一起,摆脱了对SDK的依赖,我尽量封在了PayAction: <?php  class PayAction extends Action{     //支付跳转     fu

android开发银联支付在小米4c上直接ANR异常,别的手机没事,什么原因???

问题描述 android开发银联支付在小米4c上直接ANR异常,别的手机没事,什么原因??? android银联支付,点击调起银联,在别的手机上运行正常,在小米4c上直接ANR异常,什么原因??? 解决方案 http://jingyan.baidu.com/article/b2c186c8e49428c46ff6ff43.html

银联支付

银联支付相对比较简单,引入文档,从服务器端拿到tn后发起支付,并实现UPPayPluginDelegate即可.主要是当运行时一直在下图不往下走 后来问了小伙伴说是路径的问题,自己试了下还真解决了  

初次接触java,关于System.exit(0)的问题

问题描述 初次接触java,关于System.exit(0)的问题 是这样子的,我写了一个程序,输入三个数字找最大值.之后用户输入一个字符,是q的话则退出.因为要不断地重复执行,所以我使用了for的死循环,用户输入的不是q,则继续执行该for循环. int number1,number2,number3; String str = "yes"; //str的初始值 Scanner input = new Scanner(System.in); Scanner input2 = new