简介

PHP银联支付

流程

1、注册 银联 - 技术开发平台和商户服务平台

https://open.unionpay.com

注意:注册时建议使用IE浏览器,之前注册时插件老是用不了,使用IE10以下浏览器,另外当时使用的时候老是出现问题,原来是在刚好在维护。有什么不明白的可以问问客服。

2、下载demo

https://open.unionpay.com/tjweb/acproduct/list?apiservId=448

demo下载完毕,查看说明文件



将PHP Version SDK 下的 upacp_demo_b2c 目录复制到PHP环境

修改配置文件 ...\upacp_demo_b2c\sdk\acp_sdk.ini

//主要修改服务器证书地址和证书密码
acpsdk.signCert.path=D:/certs/acp_test_sign.pfx
acpsdk.encryptCert.path=d:/certs/acp_test_enc.cer
acpsdk.middleCert.path=D:/certs/acp_test_middle.cer
acpsdk.rootCert.path=D:/certs/acp_test_root.cer
acpsdk.signCert.pwd=000000 //测试的话,如果时windows,直接把
...\upacp_demo_b2c\assets\测试环境证书 目录复制到 d盘 重命名'certs' 即可

3、 我要测试

有需要demo测试的参数信息以及支付的测试账号

4、执行demo

将demo放置php环境中

执行 ...\upacp_demo_b2c\index_01_gateway.php

填写测试参数中的信息,跳转到银联支付页面,支付成功后有回调

拿网关支付为例:

index_01_gateway.php只是页面,点击按钮后执行的是

upacp_demo_b2c\demo\api_01_gateway\Form_6_2_FrontConsume.php

里面是请求银联支付,

请求需要提供回调地址即支付后完成的动作,需要外网能访问,详细见代码。

说明

说说如何放置项目中

1、复制到项目中第三方类库目录中 如 libs 等

2、可以封装一个银联支付类

拿网关支付为例:

将 upacp_demo_b2c\demo\api_01_gateway\Form_6_2_FrontConsume.php

改写为银联支付类的一个支付方法

其它检查支付状态等 也一样,参考demo 改写为类的一个方法

3、修改配置

acp_sdk.ini //配置文件

SDKConfig.php //返回配置信息的类

可以改 acp_sdk.ini 中的证书路径, 将路径改为相对路径

让后再 SDKConfig.php 中拼接

#acp_sdk.ini

acpsdk.signCert.path=/certs/acp_test_sign.pfx
acpsdk.encryptCert.path=/certs/acp_test_enc.cer
acpsdk.middleCert.path=/certs/acp_test_middle.cer
acpsdk.rootCert.path=/certs/acp_test_root.cer
#SDKConfig.php

$UnionPath = '.../libs/UnionPay';//定义银联支付扩展目录
$ini_array = parse_ini_file('.../acp_sdk.ini', true);//读取配置-acp_sdk.ini
$sdk_array = $ini_array["acpsdk"];
this->signCertPath = $UnionPath .(array_key_exists("acpsdk.signCert.path", $sdk_array)?$sdk_array["acpsdk.signCert.path"]:'');//拼接证书路径
//类似 this->signCertPath = ... ...
#银联支付类中

//加载配置文件
//获取到配置信息
//请求银联支付
//实现回调动作
//回调的话,分析支付完成后需要做什么,数据库操作,同步等等,可以参考:
...\upacp_demo_b2c\demo\api_01_gateway\BackReceive.php
...\upacp_demo_b2c\demo\api_01_gateway\FrontReceive.php

以上就是对银联支付的一个总结,更多明细建议阅读demo代码。

php银联支付的更多相关文章

  1. iOS----支付(微信支付、支付宝支付、银联支付控件集成支付)(转)

    资料 支付宝 //文档idk都包含了安卓.iOS版 银 联 银联官网资料 Demo Demo给了一个订单号,做测试使用,若出现支付失败什么的,可能是已经被别人给支付了,或者是服务器订单过期了 ~ 一. ...

  2. Phonegap 之 iOS银联在线支付(js调用ios端银联支付控件)

    Phonegap项目,做支付的时候,当把网站打包到ios或android端成app后,在app上通过wap调用银联在线存在一个问题: 就是当从银联支付成功后,再从服务器返回到app客户端就很难实现. ...

  3. UnionPay,ChinaPay 最新 银联支付接口C#\Asp.net\MVC 版本

    1.概念普及 一.理解什么是UnionPay.ChinaPay 这两个概念如果搞不清楚,绝对够你瞎折腾一段时间的. UnionPay:中国银联,最大的机构:他本身也提供系统接口但都是B2B的,对于单个 ...

  4. iOS 集成银联支付

    下载地址:https://open.unionpay.com/upload/download/Development_kit85427986.rar 其实我找了半个小时 也不知道怎么就下载好了 这个我 ...

  5. 集成 Union Pay - 银联支付

    作者感言 前面已经把WeChat SDK的支付, AliPay SDK搞得七七八八了, 接下来就是银联支付的Union Pay SDK.最后:如果你有更好的建议或者对这篇文章有不满的地方, 请联系我, ...

  6. iOS第三方支付-银联支付

    #import <Foundation/Foundation.h> #import <UIKit/UIKit.h> #import "UPPayPluginDeleg ...

  7. 李洪强iOS开发支付集成之银联支付

    iOS开发支付集成之银联支付 银联官网在这里,这里能下载SDK或者是看文档.最新的版本写的简单了很多,看文档一直做下去基本上就没问题了. 首先,SDK在这里下载,里面包含需要的库文件和详细的文档. 银 ...

  8. unity3d银联支付出现闪退

    在接入银联SDK的unity3d的游戏中,点击银联支付会出现游戏总是出现闪退现象 ,后来网上有资料说 打开银联的jar包,将里面的res/drawable目录下的文件,拷贝到您的工程的drawable ...

  9. ios中的银联支付

    场景 随着移动互联网的迅猛发展,移动互联已经深深地融入我们的生活.其中,支付方式也是我们生活中经常遇到的情况.所以,在我们的应用中加入支付功能是多么的重要.现在主流的支付接口,一是支付宝类的,一是银联 ...

  10. TP3.2.3 接入银联支付

    TP3.2.3 接入银联支付 项目接入银联支付的过程, 在此记录下,希望能帮助开发盆友平坑. 银联SKD链接:https://open.unionpay.com/ajweb/product/newPr ...

随机推荐

  1. HDFS学习笔记(2)hdfs_shell &amp; JavaAPI

    FileSystem shell指令 官方文档: HDFS Commands Reference appendToFile cat checksum chgrp chmod chown copyFro ...

  2. 深入理解 JBoss 7/WildFly Domain 模式启动过程

    概述 JBoss 7/WildFly 以 domain 模式启动时会启动多个 JVM.比如例如以下通过启动脚本启动 domain 模式: ./domain.sh 启动后我们查看进程: [kylin@l ...

  3. AutoLayout初战----Masonry与FDTemplateLayoutCell实践

    学iOS也有几个月了.一直都是纯代码开发,菜鸟入门,到今天还处在Frame时代.刚好近期项目在提审.有点时间能够学学传说中的AutoLayout.事实上.就是android的相对布局(Relative ...

  4. 百度MP3+图片+文字:生成结果文件;(声音58秒,视频59秒,同步性需要进一步优化)

    import os os_sep = os.sep this_file_abspath = os.path.abspath(__file__) this_file_dirname, this_file ...

  5. 洛谷P1281 书的复制

    题目描述 现在要把m本有顺序的书分给k给人复制(抄写),每一个人的抄写速度都一样,一本书不允许给两个(或以上)的人抄写,分给每一个人的书,必须是连续的,比如不能把第一.第三.第四本书给同一个人抄写. ...

  6. 91. Ext中获取combobox中的valueField和displayField的值

    转自:https://blog.csdn.net/jcy472578/article/details/42113119Ext.getCmp("schemaVersion").val ...

  7. C# 针对文件夹的操作

    //创建文件夹Directory.CreateDirectory(Server.MapPath("a"));Directory.CreateDirectory(Server.Map ...

  8. 解决macOS升级之后每次使用ssh都要输入密码的问题

      最近想趁着假期把跟了我2年mac的系统重做下.于是就开始行动了,经过大半天的数据备份.然后进行了全盘格式化,使用了在线更新的方式从新安装升级到了10.12.6.这里提醒下有类似的想法的同学可以采用 ...

  9. [转]linux sudo 命令

    转自:http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/11/11/2245341.html “Sudo”是Unix/Linux平台上的一个 ...

  10. 【转】Linux命令学习手册-split命令

    转自:http://blog.chinaunix.net/uid-9525959-id-3054325.html split [OPTION] [INPUT [PREFIX]] [功能]将文件分割成多 ...