亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频

協(xié)程支付網(wǎng)關(guān)(支付寶支付)

組件安裝方法和說(shuō)明

注意:請(qǐng)務(wù)必檢查你的 php 環(huán)境有沒(méi)有安裝 php-bcmath 擴(kuò)展,沒(méi)有安裝 php-bcmath 擴(kuò)展時(shí)安裝的 pay 組件的版本是 1.2.17 之前的版本(不是最新)。想要使用最新穩(wěn)定版 pay 組件的功能,請(qǐng)先安裝 php-bcmath 擴(kuò)展,php 安裝此擴(kuò)展的方法請(qǐng)自行查詢。

composer require easyswoole/pay

支付寶

支付方法

支付寶支付目前支持 7 種支付方法,對(duì)應(yīng)的支付 method 如下:

method 說(shuō)明 參數(shù) 返回值
web 電腦支付 Request Response
wap 手機(jī)網(wǎng)站支付 Request Response
app APP 支付 Request Response
pos 刷卡支付 Request Response
scan 掃碼支付 Request Response
transfer 賬戶轉(zhuǎn)賬 Request Response
mini 小程序支付 Request Response
barCode 條碼當(dāng)面支付 Request Response

注意,easyswoole/pay 支付寶支付組件的默認(rèn)簽名為 RSA2 普通公鑰方式簽名,也支持 RSA2 公鑰證書的簽名方式。放置應(yīng)用公私鑰證書、支付寶證書路徑、支付寶根證書路徑的時(shí)候切記核對(duì)。

電腦支付

統(tǒng)一收單下單并支付頁(yè)面接口

/**
 * 普通公鑰方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
// 設(shè)置支付配置
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setReturnUrl(null);
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);
// 設(shè)置 阿里應(yīng)用公鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于支付回調(diào)時(shí)驗(yàn)證簽名
$aliConfig->setPublicKey('阿里應(yīng)用公鑰字符串'); // 示例應(yīng)用公鑰字符串
// 設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串'); // 示例應(yīng)用私鑰字符串

/**
 * 公鑰證書方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
/*
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setReturnUrl(null);
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);

// (必須)設(shè)置 使用公鑰證書方式生密鑰延簽(簽名和驗(yàn)簽方式)
$aliConfig->setCertMode(true);
// (必須)設(shè)置 支付寶公鑰文件路徑
$aliConfig->setCertPath(__DIR__ . '/cert/alipayCertPublicKey_RSA2.crt'); // 示例支付寶公鑰文件路徑
// (必須)設(shè)置 支付寶根證書文件路徑
$aliConfig->setRootCertPath(__DIR__ . '/cert/alipayRootCert.crt'); // 示例支付寶公鑰根證書文件路徑
// (必須)設(shè)置 阿里應(yīng)用公鑰證書文件路徑
$aliConfig->setMerchantCertPath(__DIR__ . '/cert/appCertPublicKey_2016091800538780.crt');
// (必須)設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串'); // 示例應(yīng)用私鑰字符串
*/

// 以上【普通公鑰方式】 和 【公鑰證書方式】 生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式) 這 2 種方式,用戶可自行選擇一種】

$pay = new \EasySwoole\Pay\Pay();

## (面向?qū)ο箫L(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
$order = new \EasySwoole\Pay\AliPay\RequestBean\Web();
// (必須)設(shè)置 商戶訂單號(hào)(商戶訂單號(hào)。64 個(gè)字符以內(nèi)的大小,僅支持字母、數(shù)字、下劃線。需保證該參數(shù)在商戶端不重復(fù)。)
$order->setOutTradeNo(time() . '123456'); // 示例訂單號(hào)(僅供參考)
// (必須)設(shè)置 訂單總金額
$order->setTotalAmount('0.01'); // 示例訂單總金額,單位:元(僅供參考)
// (必須)設(shè)置 商品標(biāo)題/交易標(biāo)題/訂單標(biāo)題/訂單關(guān)鍵字等。注意:不可使用特殊字符,如 /,=,& 等。
$order->setSubject('測(cè)試'); // 示例商品標(biāo)題(僅供參考)
// (可選)設(shè)置 訂單描述,默認(rèn)為 null
//   $order->setBody(null);
// (可選)設(shè)置 在訂單中設(shè)置支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $order->setNotifyUrl(null); // 等價(jià)于在配置中設(shè)置 支付回調(diào)地址,兩者中只要設(shè)置一次即可
// (可選)設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $order->setReturnUrl(null); // 等價(jià)于在配置中設(shè)置 return_url,兩者中只要設(shè)置一次即可
// 本庫(kù)只預(yù)置了常用的請(qǐng)求參數(shù),沒(méi)預(yù)置的參數(shù)請(qǐng)求使用:$order->addProperty('其他字段','其他字段值');
// 支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)

## (數(shù)組風(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
/*
$order = new \EasySwoole\Pay\AliPay\RequestBean\Web([
    'out_trade_no' => time() . '123456', // 示例訂單號(hào)(僅供參考)
    'total_amount' => '0.01', // 示例訂單總金額,單位:元(僅供參考)
    'subject' => '測(cè)試', // 示例商品標(biāo)題(僅供參考)
    '額外的字段鍵值' => '額外字段值', // 示例支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)
], true);
*/

// 以上 2 種風(fēng)格設(shè)置請(qǐng)求參數(shù),用戶可根據(jù)個(gè)人需要,選其一即可

// 獲取構(gòu)造請(qǐng)求參數(shù)對(duì)象
$res = $pay->aliPay($aliConfig)->web($order);
// 將所有請(qǐng)求參數(shù)轉(zhuǎn)為數(shù)組
var_dump($res->toArray());

// 構(gòu)造請(qǐng)求表單(buildPayHtml 該方法的實(shí)現(xiàn)請(qǐng)看下文)  
$html = buildPayHtml(\EasySwoole\Pay\AliPay\GateWay::NORMAL, $res->toArray());
file_put_contents('test.html', $html); 

訂單配置參數(shù)

所有訂單配置中,對(duì)于客觀非必選參數(shù),用戶可以自行選擇是否進(jìn)行配置,也可以不進(jìn)行配置,擴(kuò)展包已經(jīng)為您自動(dòng)處理了,比如,product_code 等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考 這里,查看「請(qǐng)求參數(shù)」一欄。

參數(shù)查詢:https://opendocs.alipay.com/apis/api_1/alipay.trade.page.pay

生成支付的跳轉(zhuǎn) html 示例

function buildPayHtml($endpoint, $payload)
{
    $sHtml = "<form id='alipaysubmit' name='alipaysubmit' action='".$endpoint."' method='POST'>";
    foreach ($payload as $key => $val) {
        $val = str_replace("'", '&apos;', $val);
        $sHtml .= "<input type='hidden' name='".$key."' value='".$val."'/>";
    }
    $sHtml .= "<input type='submit' value='ok' style='display:none;'></form>";
    $sHtml .= "<script>document.forms['alipaysubmit'].submit();</script>";
    return $sHtml;
}

手機(jī)網(wǎng)站支付接口 2.0

/**
 * 普通公鑰方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
// 設(shè)置支付配置
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setReturnUrl(null);
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);
// 設(shè)置 阿里應(yīng)用公鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于支付回調(diào)時(shí)驗(yàn)證簽名
$aliConfig->setPublicKey('阿里應(yīng)用公鑰字符串'); // 示例應(yīng)用公鑰字符串
// 設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串'); // 示例應(yīng)用私鑰

/**
 * 公鑰證書方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
/*
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setReturnUrl(null);
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);

// (必須)設(shè)置 使用公鑰證書方式生密鑰延簽(簽名和驗(yàn)簽方式)
$aliConfig->setCertMode(true);
// (必須)設(shè)置 支付寶公鑰文件路徑
$aliConfig->setCertPath(__DIR__ . '/cert/alipayCertPublicKey_RSA2.crt'); // 示例支付寶公鑰文件路徑
// (必須)設(shè)置 支付寶根證書文件路徑
$aliConfig->setRootCertPath(__DIR__ . '/cert/alipayRootCert.crt'); // 示例支付寶公鑰根證書文件路徑
// (必須)設(shè)置 阿里應(yīng)用公鑰證書文件路徑
$aliConfig->setMerchantCertPath(__DIR__ . '/cert/appCertPublicKey_2016091800538780.crt');
// (必須)設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串');
*/

// 以上【普通公鑰方式】 和 【公鑰證書方式】 生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式) 這 2 種方式,用戶可自行選擇一種】

$pay = new \EasySwoole\Pay\Pay();

## (面向?qū)ο箫L(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
$order = new \EasySwoole\Pay\AliPay\RequestBean\Wap();
// (必須)設(shè)置 商品標(biāo)題/交易標(biāo)題/訂單標(biāo)題/訂單關(guān)鍵字等。注意:不可使用特殊字符,如 /,=,& 等。
$order->setSubject('測(cè)試'); // 示例商品標(biāo)題(僅供參考)
// (必須)設(shè)置 商戶訂單號(hào)(商戶訂單號(hào)。64 個(gè)字符以內(nèi)的大小,僅支持字母、數(shù)字、下劃線。需保證該參數(shù)在商戶端不重復(fù)。)
$order->setOutTradeNo(time() . '123456'); // 示例訂單號(hào)(僅供參考)
// (必須)設(shè)置 訂單總金額
$order->setTotalAmount('0.01'); // 示例訂單總金額,單位:元(僅供參考)
// (必須)設(shè)置 用戶付款中途退出返回商戶網(wǎng)站的地址
$order->addProperty('quit_url', 'http://www.b3f21.cn'); // 示例中途退出返回商戶網(wǎng)站的地址(僅供參考)

// (可選)設(shè)置 訂單描述,默認(rèn)為 null
//   $order->setBody(null);
// (可選)設(shè)置 在訂單中設(shè)置支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $order->setNotifyUrl(null); // 等價(jià)于在配置中設(shè)置 支付回調(diào)地址,兩者中只要設(shè)置一次即可
// (可選)設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $order->setReturnUrl(null); // 等價(jià)于在配置中設(shè)置 return_url,兩者中只要設(shè)置一次即可
// 本庫(kù)只預(yù)置了常用的請(qǐng)求參數(shù),沒(méi)預(yù)置的參數(shù)請(qǐng)求使用:$order->addProperty('其他字段','其他字段值');
// 支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)

## (數(shù)組風(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
/*
$order = new \EasySwoole\Pay\AliPay\RequestBean\Wap([
    'out_trade_no' => time() . '123456', // 示例訂單號(hào)(僅供參考)
    'total_amount' => '0.01', // 示例訂單總金額,單位:元(僅供參考)
    'subject' => '測(cè)試', // 示例商品標(biāo)題(僅供參考)
    'quit_url' => 'http://www.b3f21.cn', // 示例中途退出返回商戶網(wǎng)站的地址(僅供參考)
    '額外的字段鍵值' => '額外字段值', // 示例支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)
], true);
*/

// 以上 2 種風(fēng)格設(shè)置請(qǐng)求參數(shù),用戶可根據(jù)個(gè)人需要,選其一即可

// 獲取構(gòu)造請(qǐng)求參數(shù)對(duì)象
$res = $pay->aliPay($aliConfig)->wap($order);
// 將所有請(qǐng)求參數(shù)轉(zhuǎn)為數(shù)組
var_dump($res->toArray());

// 構(gòu)造請(qǐng)求表單(buildPayHtml 該方法的實(shí)現(xiàn)請(qǐng)看上文)  
$html = buildPayHtml(\EasySwoole\Pay\AliPay\GateWay::NORMAL, $res->toArray());
file_put_contents('test.html', $html);

訂單配置參數(shù)

所有訂單配置中,對(duì)于客觀非必選參數(shù),用戶可以自行選擇是否進(jìn)行配置,也可以不進(jìn)行配置,擴(kuò)展包已經(jīng)為您自動(dòng)處理了,比如,product_code 等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考 這里,查看「請(qǐng)求參數(shù)」一欄。

參數(shù)查詢:https://opendocs.alipay.com/apis/api_1/alipay.trade.wap.pay

APP支付接口 2.0

/**
 * 普通公鑰方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
// 設(shè)置支付配置
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setReturnUrl(null);
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);
// 設(shè)置 阿里應(yīng)用公鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于支付回調(diào)時(shí)驗(yàn)證簽名
$aliConfig->setPublicKey('阿里應(yīng)用公鑰字符串'); // 示例應(yīng)用公鑰字符串
// 設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串'); // 示例應(yīng)用私鑰

/**
 * 公鑰證書方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
/*
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setReturnUrl(null);
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);

// (必須)設(shè)置 使用公鑰證書方式生密鑰延簽(簽名和驗(yàn)簽方式)
$aliConfig->setCertMode(true);
// (必須)設(shè)置 支付寶公鑰文件路徑
$aliConfig->setCertPath(__DIR__ . '/cert/alipayCertPublicKey_RSA2.crt'); // 示例支付寶公鑰文件路徑
// (必須)設(shè)置 支付寶根證書文件路徑
$aliConfig->setRootCertPath(__DIR__ . '/cert/alipayRootCert.crt'); // 示例支付寶公鑰根證書文件路徑
// (必須)設(shè)置 阿里應(yīng)用公鑰證書文件路徑
$aliConfig->setMerchantCertPath(__DIR__ . '/cert/appCertPublicKey_2016091800538780.crt');
// (必須)設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串');
*/

// 以上【普通公鑰方式】 和 【公鑰證書方式】 生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式) 這 2 種方式,用戶可自行選擇一種】

$pay = new \EasySwoole\Pay\Pay();

## (面向?qū)ο箫L(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
$order = new \EasySwoole\Pay\AliPay\RequestBean\App();
// (必須)設(shè)置 訂單總金額
$order->setTotalAmount('0.01'); // 示例訂單總金額,單位:元(僅供參考)
// (必須)設(shè)置 商品標(biāo)題/交易標(biāo)題/訂單標(biāo)題/訂單關(guān)鍵字等。注意:不可使用特殊字符,如 /,=,& 等。
$order->setSubject('測(cè)試'); // 示例商品標(biāo)題(僅供參考)
// (必須)設(shè)置 商戶訂單號(hào)(商戶訂單號(hào)。64 個(gè)字符以內(nèi)的大小,僅支持字母、數(shù)字、下劃線。需保證該參數(shù)在商戶端不重復(fù)。)
$order->setOutTradeNo(time() . '123456'); // 示例訂單號(hào)(僅供參考)
// (可選)設(shè)置 銷售產(chǎn)品碼,商家和支付寶簽約的產(chǎn)品碼,默認(rèn)為 QUICK_MSECURITY_PAY(App支付)。
//   $order->addProperty('product_code', 'QUICK_MSECURITY_PAY'); // 示例銷售產(chǎn)品碼(僅供參考)
// (可選)設(shè)置 訂單描述,默認(rèn)為 null
//   $order->setBody(null);
// (可選)設(shè)置 在訂單中設(shè)置支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $order->setNotifyUrl(null); // 等價(jià)于在配置中設(shè)置 支付回調(diào)地址,兩者中只要設(shè)置一次即可
// (可選)設(shè)置 return_url(默認(rèn)為 null,可選參數(shù))
//   $order->setReturnUrl(null); // 等價(jià)于在配置中設(shè)置 return_url,兩者中只要設(shè)置一次即可
// 本庫(kù)只預(yù)置了常用的請(qǐng)求參數(shù),沒(méi)預(yù)置的參數(shù)請(qǐng)求使用:$order->addProperty('其他字段','其他字段值');
// 支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)

## (數(shù)組風(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
/*
$order = new \EasySwoole\Pay\AliPay\RequestBean\Wap([
    'out_trade_no' => time() . '123456', // 示例訂單號(hào)(僅供參考)
    'total_amount' => '0.01', // 示例訂單總金額,單位:元(僅供參考)
    'subject' => '測(cè)試', // 示例商品標(biāo)題(僅供參考)
    '額外的字段鍵值' => '額外字段值', // 示例支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)
], true);
*/

// 以上 2 種風(fēng)格設(shè)置請(qǐng)求參數(shù),用戶可根據(jù)個(gè)人需要,選其一即可

// 獲取構(gòu)造請(qǐng)求參數(shù)對(duì)象
$res = $pay->aliPay($aliConfig)->app($order);
// 將所有請(qǐng)求參數(shù)轉(zhuǎn)為數(shù)組
var_dump($res->toArray());

訂單配置參數(shù)

所有訂單配置中,對(duì)于客觀非必選參數(shù),用戶可以自行選擇是否進(jìn)行配置,也可以不進(jìn)行配置,擴(kuò)展包已經(jīng)為您自動(dòng)處理了,比如,product_code 等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考 這里,查看「請(qǐng)求參數(shù)」一欄。

參數(shù)查詢:https://opendocs.alipay.com/apis/api_1/alipay.trade.app.pay

刷卡支付

/**
 * 普通公鑰方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
// 設(shè)置支付配置
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);
// 設(shè)置 阿里應(yīng)用公鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于支付回調(diào)時(shí)驗(yàn)證簽名
$aliConfig->setPublicKey('阿里應(yīng)用公鑰字符串'); // 示例應(yīng)用公鑰字符串
// 設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串'); // 示例應(yīng)用私鑰

/**
 * 公鑰證書方式生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式)
 */
/*
$aliConfig = new \EasySwoole\Pay\AliPay\Config();
### 配置支付公共請(qǐng)求參數(shù)
// (必須)設(shè)置 支付寶分配給開發(fā)者的應(yīng)用ID
$aliConfig->setAppId('2017082000295641');
// (必須)設(shè)置 請(qǐng)求網(wǎng)關(guān)(默認(rèn)為 沙箱模式)
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::NORMAL);
// 設(shè)置 參數(shù)格式(默認(rèn)為 'JSON',可選參數(shù)),不建議修改
//   $aliConfig->setFormat('JSON');
// 設(shè)置 請(qǐng)求使用的編碼格式,如utf-8、gbk、gb2312等(默認(rèn)為 'utf-8')
//   $aliConfig->setCharset('utf-8');
// 設(shè)置 商戶生成簽名字符串所使用的簽名算法類型,目前支持 RSA2 和 RSA,推薦使用 RSA2(默認(rèn)為 'RSA2')
$aliConfig->setSignType('RSA2');
// 設(shè)置 調(diào)用的接口版本(默認(rèn)為 '1.0')
//   $aliConfig->setApiVersion('1.0');
// 設(shè)置 支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $aliConfig->setNotifyUrl(null);
// 設(shè)置 應(yīng)用授權(quán)參數(shù)(默認(rèn)為 null,可選參數(shù)),詳細(xì)請(qǐng)看(https://opendocs.alipay.com/open/common/105193)
//   $aliConfig->setAppAuthToken(null);

// (必須)設(shè)置 使用公鑰證書方式生密鑰延簽(簽名和驗(yàn)簽方式)
$aliConfig->setCertMode(true);
// (必須)設(shè)置 支付寶公鑰文件路徑
$aliConfig->setCertPath(__DIR__ . '/cert/alipayCertPublicKey_RSA2.crt'); // 示例支付寶公鑰文件路徑
// (必須)設(shè)置 支付寶根證書文件路徑
$aliConfig->setRootCertPath(__DIR__ . '/cert/alipayRootCert.crt'); // 示例支付寶公鑰根證書文件路徑
// (必須)設(shè)置 阿里應(yīng)用公鑰證書文件路徑
$aliConfig->setMerchantCertPath(__DIR__ . '/cert/appCertPublicKey_2016091800538780.crt');
// (必須)設(shè)置 阿里應(yīng)用私鑰(支持 .pem 結(jié)尾的格式,默認(rèn)為 PKCS1 格式),用于生成簽名
$aliConfig->setPrivateKey('阿里應(yīng)用私鑰字符串');
*/

// 以上【普通公鑰方式】 和 【公鑰證書方式】 生成密鑰驗(yàn)簽(簽名和驗(yàn)簽方式) 這 2 種方式,用戶可自行選擇一種】

$pay = new \EasySwoole\Pay\Pay();

## (面向?qū)ο箫L(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
$order = new \EasySwoole\Pay\AliPay\RequestBean\Pos();
// (必須)設(shè)置 商戶訂單號(hào)(商戶訂單號(hào)。64 個(gè)字符以內(nèi)的大小,僅支持字母、數(shù)字、下劃線。需保證該參數(shù)在商戶端不重復(fù)。)
$order->setOutTradeNo(time() . '123456'); // 示例訂單號(hào)(僅供參考)
// (必須)設(shè)置 支付授權(quán)碼(詳細(xì)說(shuō)明請(qǐng)看支付寶官網(wǎng)文檔:https://opendocs.alipay.com/apis/api_1/alipay.trade.pay?scene=common)
$order->setAuthCode('289756915257123456'); // 示例支付授權(quán)碼(僅供參考)
// (必須)設(shè)置 商品標(biāo)題/交易標(biāo)題/訂單標(biāo)題/訂單關(guān)鍵字等。注意:不可使用特殊字符,如 /,=,& 等。
$order->setSubject('測(cè)試'); // 示例商品標(biāo)題(僅供參考)
// (可選)設(shè)置 支付場(chǎng)景,(默認(rèn)為 'bar_code')
//   $order->addProperty('scene', 'bar_code');
// (可選)設(shè)置 產(chǎn)品碼,默認(rèn)為 'FACE_TO_FACE_PAYMENT'(當(dāng)面付)
//   $order->addProperty('product_code', 'FACE_TO_FACE_PAYMENT');
// (可選)設(shè)置 訂單描述,默認(rèn)為 null
//   $order->setBody(null);
// (可選)設(shè)置 在訂單中設(shè)置支付寶服務(wù)器主動(dòng)通知商戶服務(wù)器里指定的頁(yè)面http/https路徑,即支付回調(diào)地址(默認(rèn)為 null,可選參數(shù))
//   $order->setNotifyUrl(null); // 等價(jià)于在配置中設(shè)置 支付回調(diào)地址,兩者中只要設(shè)置一次即可
// 本庫(kù)只預(yù)置了常用的請(qǐng)求參數(shù),沒(méi)預(yù)置的參數(shù)請(qǐng)求使用:$order->addProperty('其他字段','其他字段值');
// 支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)

## (數(shù)組風(fēng)格)設(shè)置請(qǐng)求參數(shù) biz_content,組件自動(dòng)幫你組裝成對(duì)應(yīng)的格式
/*
$order = new \EasySwoole\Pay\AliPay\RequestBean\Wap([
    'out_trade_no' => time() . '123456', // 示例訂單號(hào)(僅供參考)
    'auth_code' => '289756915257123456', // 示例支付授權(quán)碼(僅供參考)
    'product_code' => 'FACE_TO_FACE_PAYMENT', // 示例產(chǎn)品碼,默認(rèn)為 'FACE_TO_FACE_PAYMENT'(當(dāng)面付)
    'subject' => '測(cè)試', // 示例商品標(biāo)題(僅供參考)
    '額外的字段鍵值' => '額外字段值', // 示例支付其他可選參數(shù)(詳細(xì)請(qǐng)看支付寶接口的可選參數(shù),支付寶接口對(duì)應(yīng)地址請(qǐng)看下文)
], true);
*/

// 以上 2 種風(fēng)格設(shè)置請(qǐng)求參數(shù),用戶可根據(jù)個(gè)人需要,選其一即可

// 獲取構(gòu)造請(qǐng)求參數(shù)對(duì)象
$res = $pay->aliPay($aliConfig)->pos($order);
// 將所有請(qǐng)求參數(shù)轉(zhuǎn)為數(shù)組
$data = $res->toArray();

訂單配置參數(shù)

所有訂單配置中,對(duì)于客觀非必選參數(shù),用戶可以自行選擇是否進(jìn)行配置,也可以不進(jìn)行配置,擴(kuò)展包已經(jīng)為您自動(dòng)處理了,比如,product_codeauth_codescene等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考 這里,查看「請(qǐng)求參數(shù)」一欄。

參數(shù)查詢:https://opendocs.alipay.com/apis/api_1/alipay.trade.pay

掃碼支付

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');

$pay = new \EasySwoole\Pay\Pay();

$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\Scan();
$order->setSubject('測(cè)試');
$order->setTotalAmount('0.01');
$order->setOutTradeNo(time());

$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->scan($order)->toArray();
$response = $aliPay->preQuest($data);
var_dump($response);
// qr_code 當(dāng)前預(yù)下單請(qǐng)求生成的二維碼碼串,可以用二維碼生成工具根據(jù)該碼串值生成對(duì)應(yīng)的二維碼  https://qr.alipay.com/bavh4wjlxf12tper3a

訂單配置參數(shù)

所有訂單配置中,客觀參數(shù)均不用配置,擴(kuò)展包已經(jīng)為大家自動(dòng)處理了,比如,product_code 等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考這里,查看「請(qǐng)求參數(shù)」一欄。

參考參數(shù):https://docs.open.alipay.com/api_1/alipay.trade.precreate

單筆轉(zhuǎn)賬到支付寶賬戶接口

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');

$pay = new \EasySwoole\Pay\Pay();

$order = new \EasySwoole\Pay\AliPay\RequestBean\Transfer();
$order->setSubject('測(cè)試');
$order->setAmount('0.01');
/*
    收款方賬戶類型。可取值:
    1、ALIPAY_USERID:支付寶賬號(hào)對(duì)應(yīng)的支付寶唯一用戶號(hào)。以2088開頭的16位純數(shù)字組成。
    2、ALIPAY_LOGONID:支付寶登錄號(hào),支持郵箱和手機(jī)號(hào)格式。
*/
$order->setPayeeType('ALIPAY_LOGONID');
$order->setPayeeAccount('hcihsn8174@sandbox.com');

$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->transfer($order)->toArray();
$aliPay->preQuest($data);
var_dump($data);

本接口用的是老版本的 https://docs.open.alipay.com/309/alipay.fund.trans.toaccount.transfer

訂單配置參數(shù)

所有訂單配置中,客觀參數(shù)均不用配置,擴(kuò)展包已經(jīng)為大家自動(dòng)處理了,比如,product_code 等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考這里,查看「請(qǐng)求參數(shù)」一欄。

參數(shù)查詢:https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer

小程序支付

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');

$pay = new \EasySwoole\Pay\Pay();

$order = new \EasySwoole\Pay\AliPay\RequestBean\MiniProgram();
$order->setSubject('測(cè)試');
$order->setOutTradeNo(time().'123456');
$order->setTotalAmount('0.01');
$order->setBuyerId('hcihsn8174@sandbox.com');

$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->miniProgram($order)->toArray();
var_dump($data);

訂單配置參數(shù)

所有訂單配置中,客觀參數(shù)均不用配置,擴(kuò)展包已經(jīng)為大家自動(dòng)處理了,比如,product_code 等參數(shù)。

所有訂單配置參數(shù)和官方無(wú)任何差別,兼容所有功能,所有參數(shù)請(qǐng)參考這里,查看「請(qǐng)求參數(shù)」一欄。

小程序支付接入文檔:https://docs.alipay.com/mini/introduce/pay

參數(shù)查詢:

訂單查詢

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\OrderFind();
$order->setOutTradeNo(time().'123456');
$aliPay = $pay->aliPay($aliConfig);

var_dump($aliPay->orderFind($order)->toArray());

官方參數(shù)查詢:https://docs.open.alipay.com/api_1/alipay.trade.fastpay.refund.query

退款查詢

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\RefundFind();
$order->setOutTradeNo('20150320010101001');
$order->setOutRequestNo(time().'2014112611001004680073956707');
$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->refundFind($order)->toArray();
var_dump($aliPay->preQuest($data));

官方參數(shù)查詢:https://docs.open.alipay.com/api_1/alipay.trade.refund

查詢轉(zhuǎn)賬訂單接口

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\TransferFind();
$order->setOutBizNo('3142321423432');
// 二選一
//  $order->setOrderId('20160627110070001502260006780837');
$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->transferFind($order)->toArray();
var_dump($aliPay->preQuest($data));

官方參數(shù)查詢:https://docs.open.alipay.com/api_28/alipay.fund.trans.order.query

交易撤銷接口

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\Cancel();
$order->setOutTradeNo('20150320010101001');
$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->cancel($order)->toArray();
var_dump($aliPay->preQuest($data));

官方參數(shù)查詢:https://docs.open.alipay.com/api_1/alipay.trade.cancel

交易關(guān)閉接口

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\Close();
$order->setOutTradeNo(time().'123456');
$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->close($order)->toArray();
var_dump($aliPay->preQuest($data));

官方參數(shù)查詢:https://docs.open.alipay.com/api_1/alipay.trade.close

查詢對(duì)賬單下載地址

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();
$order = new \EasySwoole\Pay\AliPay\RequestBean\Download();
$order->setBillType('trade');
$order->setBillDate('2016-04-05');
$aliPay = $pay->aliPay($aliConfig);
$data = $aliPay->download($order)->toArray();
var_dump($aliPay->preQuest($data));

官方參數(shù)查詢:https://docs.open.alipay.com/api_15/alipay.data.dataservice.bill.downloadurl.query

驗(yàn)證服務(wù)器數(shù)據(jù)

$aliConfig = new \EasySwoole\Pay\AliPay\Config();
$aliConfig->setGateWay(\EasySwoole\Pay\AliPay\GateWay::SANDBOX);
$aliConfig->setAppId('2016091800538339');
$aliConfig->setPublicKey('阿里公鑰');
$aliConfig->setPrivateKey('阿里私鑰');
$pay = new \EasySwoole\Pay\Pay();

$param = [];//偽代碼,post數(shù)據(jù)
unset($param['sign_type']);//需要忽略sign_type組裝
$order = new \EasySwoole\Pay\AliPay\RequestBean\NotifyRequest($param,true);
$aliPay = $pay->aliPay($aliConfig);
$result = $aliPay->verify($order);
var_dump($result);

服務(wù)器確認(rèn)收到異步通知字符串獲取

可通過(guò)調(diào)用如下方法得到響應(yīng)支付寶的異步通知字符串:'success'/'failure'

\EasySwoole\Pay\AliPay\AliPay::success(); // 成功響應(yīng)
\EasySwoole\Pay\AliPay\AliPay::fail(); // 失敗響應(yīng)
主站蜘蛛池模板: 国产小视频网址 | 日韩综合在线 | a级毛片特级毛片 | 中文字幕一二三四区 | 欧美日色| 国产日本视频 | 欧美 日韩 国产一区 | 欧美国产一级 | 亚洲网站在线 | 亚洲精品888 | 91精品国产91久久久久久不卞 | 欧美日韩视频网站 | 日韩在线免费观看视频 | 国产中文在线播放 | 国产s级做人爱c视频大学生 | 日本理论在线观看 | 伊人黄色片 | 成人亚洲欧美 | 亚洲 欧美 视频 | 91精品国产综合久久久 | 少妇一级淫片免费 | 亚洲高清色图 | 蜜桃视频精品 | 免费一级片在线观看 | 国产精品大bbwbbwbbw | 中文字幕在线网址 | 女人18毛片一级毛片在线 | 亚洲乱码一区二区三区三上悠亚 | 国产精品自产拍在线观看桃花 | 色电影网站 | 国产免费av在线 | 亚色视频在线观看 | 性一交一乱一区二区洋洋av | 一级做受毛片免费大片一级做 | 亚洲一区影院 | 色婷婷在线观看视频 | av黄色在线免费观看 | 黄色国产 | 撸大师av| av男人的天堂网 | 久久天堂影院 |