zfuming/omnipay-wxpay
Composer 安装命令:
composer require zfuming/omnipay-wxpay
包简介
Wechat gateway for Omnipay payment processing library
README 文档
README
WxPay driver for the Omnipay PHP payment processing library
The WxPay gateway can be accessed from outside of China
Omnipay is a framework agnostic, multi-gateway payment processing library for PHP 5.3+. This package implements UnionPay support for Omnipay.
Installation
Omnipay is installed via Composer. To install, simply add it
to your composer.json file:
"zfuming/omnipay-wxpay": "^1.0",
And run composer to update your dependencies:
$ composer update -vvv
Basic Usage
The following gateways are provided by this package:
- WxPay (Wechat Common Gateway) 微信支付通用网关
- WxPay_App (Wechat App Gateway) 微信APP支付网关
- WxPay_Native (Wechat Native Gateway) 微信原生扫码支付支付网关
- WxPay_Js (Wechat Js API/MP Gateway) 微信网页、公众号、小程序支付网关
- WxPay_Pos (Wechat Micro/POS Gateway) 微信刷卡支付网关
Usage
Create Order doc
//gateways: WxPay_App, WxPay_Native, WxPay_Js, WxPay_Pos $gateway = Omnipay::create('WxPay_App'); $gateway->setAppId($config['app_id']); $gateway->setMchId($config['mch_id']); $gateway->setSubMchId($config['sub_mch_id']); $gateway->setApiKey($config['api_key']); $order = [ 'body' => 'The test order', 'out_trade_no' => date('YmdHis').mt_rand(1000, 9999), 'total_fee' => 1, //=0.01 'spbill_create_ip' => 'ip_address', 'fee_type' => 'CNY' ]; /** * @var Omnipay\WxPay\Message\CreateOrderRequest $request * @var Omnipay\WxPay\Message\CreateOrderResponse $response */ $request = $gateway->purchase($order); $response = $request->send(); //available methods $response->isSuccessful(); $response->getData(); //For debug $response->getAppOrderData(); //For WxPay_App $response->getJsOrderData(); //For WxPay_Js $response->getCodeUrl(); //For Native Trade Type
Notify doc
$gateway = Omnipay::create('WxPay'); $gateway->setAppId($config['app_id']); $gateway->setMchId($config['mch_id']); $gateway->setSubMchId($config['sub_mch_id']); $gateway->setApiKey($config['api_key']); $response = $gateway->completePurchase([ 'request_params' => file_get_contents('php://input') ])->send(); if ($response->isPaid()) { //pay success var_dump($response->getData()); }else{ //pay fail }
Query Order doc
$response = $gateway->query([ 'transaction_id' => '1217752501201407033233368018', //The wechat trade no ])->send(); var_dump($response->isSuccessful()); var_dump($response->getData());
Close Order doc
$response = $gateway->close([ 'out_trade_no' => '201602011315231245', //The merchant trade no ])->send(); var_dump($response->isSuccessful()); var_dump($response->getData());
Refund doc
$gateway->setCertPath($certPath); $gateway->setKeyPath($keyPath); $response = $gateway->refund([ 'transaction_id' => '1217752501201407033233368018', //The wechat trade no 'out_refund_no' => $outRefundNo, 'total_fee' => 1, //=0.01 'refund_fee' => 1, //=0.01 ])->send(); var_dump($response->isSuccessful()); var_dump($response->getData());
QueryRefund doc
$response = $gateway->queryRefund([ 'refund_id' => '1217752501201407033233368018', //Your site trade no, not union tn. ])->send(); var_dump($response->isSuccessful()); var_dump($response->getData());
Shorten URL (for WxPay_Native) doc
$response = $gateway->shortenUrl([ 'long_url' => $longUrl ])->send(); var_dump($response->isSuccessful()); var_dump($response->getData()); var_dump($response->getShortUrl());
Query OpenId (for WxPay_Pos) doc
$response = $gateway->shortenUrl([ 'auth_code' => $authCode ])->send(); var_dump($response->isSuccessful()); var_dump($response->getData()); var_dump($response->getOpenId());
For general usage instructions, please see the main Omnipay repository.
统计信息
- 总下载量: 35
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 8
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2017-09-08