承接 hyperbolaa/unionpay 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

hyperbolaa/unionpay

Composer 安装命令:

composer create-project hyperbolaa/unionpay

包简介

银联支付SDK在Laravel5中封装包。

README 文档

README

交易类型

  • 00:查询交易,
  • 01:消费,
  • 02:预授权,
  • 03:预授权完成,
  • 04:退货,
  • 05:圈存,
  • 11:代收,
  • 12:代付,
  • 13:账单支付,
  • 14:转账(保留),
  • 21:批量交易,
  • 22:批量查询,
  • 31:消费撤销,
  • 32:预授权撤销,
  • 33:预授权完成撤销,
  • 71:余额查询,
  • 72:实名认证-建立绑定关系,
  • 73:账单查询,
  • 74:解除绑定关系,
  • 75:查询绑定关系,
  • 77:发送短信验证码交易,
  • 78:开通查询交易,
  • 79:开通交易,
  • 94:IC卡脚本通知 ,
  • 95:查询更新加密公钥证书

产品类型:bizType

  • 依据实际业务场景填写 默认取值:000000 具体取值范围:
  • 000201:B2C 网关支付
  • 000301:认证支付 2.0
  • 000302:评级支付
  • 000401:代付
  • 000501:代收
  • 000601:账单支付
  • 000801:跨行收单
  • 000901:绑定支付
  • 001001:订购
  • 000202:B2B

接入类型:accessType

  • 0:商户直接接入
  • 1:收单机构接入
  • 2:平台商接入

渠道类型:channelType

  • 05:语音
  • 07:互联网
  • 08:移动
  • 16:数字机顶盒

应答码:respCode

  • 00:成功
  • 01-09:银联全渠道系统原因导致的错误
  • 10-29:商户端上送保温格式检查导致的错误
  • 30-59:商户端相关业务检查导致的错误
  • 60-89:持卡人/发卡行 相关问题导致的错误
  • 90-99:预留

备注

version5.0.0 与 version5.1.0 验签方式不一样
本项目使用的是version5.0.0   (使用其他版本会存在问题)

安装

composer require hyperbolaa/unionpay dev-master

laravel 配置

 'providers' => [
     // ...
     Hyperbolaa\Unionpay\UnionpayServiceProvider::class,
 ]

生成配置文件

运行 `php artisan vendor:publish` 命令,
发布配置文件到你的项目中。

app代码使用

$unionpay = app('unionpay.mobile');
$unionpay->setOrderId('order_id');
$unionpay->setTxnAmt('order_amount');
$unionpay->setTxnTime('req_time');

//返回签名后的支付参数给移动端的sdk-》{539512046523081531300}
return $unionpay->consume();

wap代码使用

$unionpay = app('unionpay.wap');
$unionpay->setOrderId('order_id');
$unionpay->setTxnAmt('order_amount');
$unionpay->setTxnTime('req_time');

//返回一个表单
return $unionpay->consume();

异步通知

	public function unionpayNotify()
	{
		if (! app('unionpay.mobile')->verify()) {
			Log::notice('unionpay notify post data verification fail.', [
				'data' => Request::instance()->getContent()
			]);
			return 'fail';
		}

		// 判断通知类型。
		if (Input::get('respCode') == '00') {
				// TODO: 支付成功,取得订单号进行其它相关操作。
				Log::debug('unionpay notify get data verification success.', [
					'out_trade_no'  => Input::get('orderId'),
					'trade_no'      => Input::get('queryId')
				]);
		}

		return 'success';
	}

稳定版本使用

composer require hyperbolaa/unionpay:1.0

happy coding

联系&打赏

如果真心觉得项目帮助到你,为你节省了成本,欢迎鼓励一下。

如果有什么问题,可通过以下方式联系我。提供有偿技术服务。

也希望更多朋友可用提供代码支持。欢迎交流与打赏。

加入QQ群:60973229

Related

  • Ylpay 基于laravel5的POS通支付
  • Alipay 基于laravel5的支付宝支付
  • Wechatpay 基于laravel5的微信支付
  • Alisms 基于laravel5的阿里云短信

hyperbolaa/unionpay 适用场景与选型建议

hyperbolaa/unionpay 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 518 次下载、GitHub Stars 达 24, 最近一次更新时间为 2017 年 03 月 29 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「laravel5」 「union」 「unionpay」 「银联」 「laravel5.2」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 hyperbolaa/unionpay 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 hyperbolaa/unionpay 我们能提供哪些服务?
定制开发 / 二次开发

基于 hyperbolaa/unionpay 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 518
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 25
  • 点击次数: 8
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 24
  • Watchers: 1
  • Forks: 8
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-03-29