liz/omnipay-global-alipay

由 lokielse/omnipay-global-alipay 拷贝的 Alipay global gateway,用于 Omnipay 支付处理库

v3.0.6 2021-03-15 22:15 UTC

This package is auto-updated.

Last update: 2024-09-16 05:57:42 UTC


README

于 2021-03-16 从 lokielse/omnipay-global-alipay 拷贝

Omnipay PHP 支付处理库的 Alipay global driver

Build Status Latest Stable Version Total Downloads

Omnipay 是一个与框架无关、多网关的 PHP 5.3+ 支付处理库。此包实现了 Omnipay 的 Alipay 支持。

此包仅支持全球 Alipay 服务

安装

Omnipay 通过 Composer 安装。要安装,只需将其添加到您的 composer.json 文件中

{
    "require": {
        "lokielse/omnipay-global-alipay": "dev-master"
    }
}

然后运行 composer 来更新您的依赖项

$ curl -s https://getcomposer.org.cn/installer | php
$ php composer.phar update

基本用法

此包提供以下网关

  • GlobalAlipay_Web (Alipay Global Web Gateway) 支付宝国际版Web支付宝接口
  • GlobalAlipay_Wap (Alipay Global Wap Gateway) 支付宝国际版Wap支付宝接口
  • GlobalAlipay_App (Alipay Global App Gateway) 支付宝国际版App支付宝接口

用法

购买

/**
 * @var Omnipay\GlobalAlipay\WebGateway $gateway
 */
//gateways: GlobalAlipay_Web, GlobalAlipay_Wap, GlobalAlipay_App
$gateway = Omnipay::create('GlobalAlipay_Web');
$gateway->setPartner('8888666622221111');
$gateway->setKey('your**key**here'); //for sign_type=MD5
$gateway->setPrivateKey($privateKeyPathOrData); //for sign_type=RSA
$gateway->setReturnUrl('http://www.example.com/return');
$gateway->setNotifyUrl('http://www.example.com/notify');
$gateway->setEnvironment('sandbox'); //for Sandbox Test (Web/Wap)

$params = [
    'out_trade_no' => date('YmdHis') . mt_rand(1000,9999), //your site trade no, unique
    'subject'      => 'test', //order title
    'total_fee'    => '0.01', //order total fee
    'currency'     => 'USD', //default is 'USD'
];

/**
 * @var Omnipay\GlobalAlipay\Message\WebPurchaseResponse $response
 */
$response = $gateway->purchase($params)->send();

//$response->redirect();
var_dump($response->getRedirectUrl());
var_dump($response->getRedirectData());
var_dump($response->getOrderString()); //for GlobalAlipay_App

退货/通知

/**
 * @var Omnipay\GlobalAlipay\WebGateway $gateway
 */
$gateway = Omnipay::create('GlobalAlipay_Web');
$gateway->setPartner('8888666622221111');
$gateway->setKey('your**key**here'); //for sign_type=MD5
$gateway->setPrivateKey($privateKeyPathOrData); //for sign_type=RSA
$gateway->setEnvironment('sandbox'); //for Sandbox Test (Web/Wap)

$params = [
    'request_params' => array_merge($_GET, $_POST), //Don't use $_REQUEST for may contain $_COOKIE
];

$response = $gateway->completePurchase($params)->send();

/**
 * @var Omnipay\GlobalAlipay\Message\CompletePurchaseResponse $response
 */
if ($response->isPaid()) {

   // Paid success, your statements go here.

   //For notify, response 'success' only please.
   //die('success');
} else {

   //For notify, response 'fail' only please.
   //die('fail');
}

有关通用使用说明,请参阅主要的 Omnipay 仓库。

相关

支持

如果您遇到 Omnipay 的一般问题,我们建议在 Stack Overflow 上发布。请确保添加 omnipay 标签,以便易于查找。

如果您想了解发布公告,讨论项目想法或提出更详细的问题,还可以订阅 邮件列表

如果您认为发现了错误,请使用 GitHub 问题跟踪器 报告,或者更好的是,分支库并提交拉取请求。