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

協程支付網關(支付寶支付)

組件安裝方法和說明

注意:請務必檢查你的 php 環境有沒有安裝 php-bcmath 擴展,沒有安裝 php-bcmath 擴展時安裝的 pay 組件的版本是 1.2.17 之前的版本(不是最新)。想要使用最新穩定版 pay 組件的功能,請先安裝 php-bcmath 擴展,php 安裝此擴展的方法請自行查詢。

composer require easyswoole/pay

支付寶

支付方法

支付寶支付目前支持 7 種支付方法,對應的支付 method 如下:

method 說明 參數 返回值
web 電腦支付 Request Response
wap 手機網站支付 Request Response
app APP 支付 Request Response
pos 刷卡支付 Request Response
scan 掃碼支付 Request Response
transfer 賬戶轉賬 Request Response
mini 小程序支付 Request Response
barCode 條碼當面支付 Request Response

注意,easyswoole/pay 支付寶支付組件的默認簽名為 RSA2 普通公鑰方式簽名,也支持 RSA2 公鑰證書的簽名方式。放置應用公私鑰證書、支付寶證書路徑、支付寶根證書路徑的時候切記核對。

電腦支付

統一收單下單并支付頁面接口

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

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

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

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

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

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

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

// 以上 2 種風格設置請求參數,用戶可根據個人需要,選其一即可

// 獲取構造請求參數對象
$res = $pay->aliPay($aliConfig)->web($order);
// 將所有請求參數轉為數組
var_dump($res->toArray());

// 構造請求表單(buildPayHtml 該方法的實現請看下文)  
$html = buildPayHtml(\EasySwoole\Pay\AliPay\GateWay::NORMAL, $res->toArray());
file_put_contents('test.html', $html); 

訂單配置參數

所有訂單配置中,對于客觀非必選參數,用戶可以自行選擇是否進行配置,也可以不進行配置,擴展包已經為您自動處理了,比如,product_code 等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考 這里,查看「請求參數」一欄。

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

生成支付的跳轉 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;
}

手機網站支付接口 2.0

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

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

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

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

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

## (面向對象風格)設置請求參數 biz_content,組件自動幫你組裝成對應的格式
$order = new \EasySwoole\Pay\AliPay\RequestBean\Wap();
// (必須)設置 商品標題/交易標題/訂單標題/訂單關鍵字等。注意:不可使用特殊字符,如 /,=,& 等。
$order->setSubject('測試'); // 示例商品標題(僅供參考)
// (必須)設置 商戶訂單號(商戶訂單號。64 個字符以內的大小,僅支持字母、數字、下劃線。需保證該參數在商戶端不重復。)
$order->setOutTradeNo(time() . '123456'); // 示例訂單號(僅供參考)
// (必須)設置 訂單總金額
$order->setTotalAmount('0.01'); // 示例訂單總金額,單位:元(僅供參考)
// (必須)設置 用戶付款中途退出返回商戶網站的地址
$order->addProperty('quit_url', 'http://www.b3f21.cn'); // 示例中途退出返回商戶網站的地址(僅供參考)

// (可選)設置 訂單描述,默認為 null
//   $order->setBody(null);
// (可選)設置 在訂單中設置支付寶服務器主動通知商戶服務器里指定的頁面http/https路徑,即支付回調地址(默認為 null,可選參數)
//   $order->setNotifyUrl(null); // 等價于在配置中設置 支付回調地址,兩者中只要設置一次即可
// (可選)設置 return_url(默認為 null,可選參數)
//   $order->setReturnUrl(null); // 等價于在配置中設置 return_url,兩者中只要設置一次即可
// 本庫只預置了常用的請求參數,沒預置的參數請求使用:$order->addProperty('其他字段','其他字段值');
// 支付其他可選參數(詳細請看支付寶接口的可選參數,支付寶接口對應地址請看下文)

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

// 以上 2 種風格設置請求參數,用戶可根據個人需要,選其一即可

// 獲取構造請求參數對象
$res = $pay->aliPay($aliConfig)->wap($order);
// 將所有請求參數轉為數組
var_dump($res->toArray());

// 構造請求表單(buildPayHtml 該方法的實現請看上文)  
$html = buildPayHtml(\EasySwoole\Pay\AliPay\GateWay::NORMAL, $res->toArray());
file_put_contents('test.html', $html);

訂單配置參數

所有訂單配置中,對于客觀非必選參數,用戶可以自行選擇是否進行配置,也可以不進行配置,擴展包已經為您自動處理了,比如,product_code 等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考 這里,查看「請求參數」一欄。

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

APP支付接口 2.0

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

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

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

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

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

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

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

// 以上 2 種風格設置請求參數,用戶可根據個人需要,選其一即可

// 獲取構造請求參數對象
$res = $pay->aliPay($aliConfig)->app($order);
// 將所有請求參數轉為數組
var_dump($res->toArray());

訂單配置參數

所有訂單配置中,對于客觀非必選參數,用戶可以自行選擇是否進行配置,也可以不進行配置,擴展包已經為您自動處理了,比如,product_code 等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考 這里,查看「請求參數」一欄。

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

刷卡支付

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

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

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

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

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

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

## (數組風格)設置請求參數 biz_content,組件自動幫你組裝成對應的格式
/*
$order = new \EasySwoole\Pay\AliPay\RequestBean\Wap([
    'out_trade_no' => time() . '123456', // 示例訂單號(僅供參考)
    'auth_code' => '289756915257123456', // 示例支付授權碼(僅供參考)
    'product_code' => 'FACE_TO_FACE_PAYMENT', // 示例產品碼,默認為 'FACE_TO_FACE_PAYMENT'(當面付)
    'subject' => '測試', // 示例商品標題(僅供參考)
    '額外的字段鍵值' => '額外字段值', // 示例支付其他可選參數(詳細請看支付寶接口的可選參數,支付寶接口對應地址請看下文)
], true);
*/

// 以上 2 種風格設置請求參數,用戶可根據個人需要,選其一即可

// 獲取構造請求參數對象
$res = $pay->aliPay($aliConfig)->pos($order);
// 將所有請求參數轉為數組
$data = $res->toArray();

訂單配置參數

所有訂單配置中,對于客觀非必選參數,用戶可以自行選擇是否進行配置,也可以不進行配置,擴展包已經為您自動處理了,比如,product_codeauth_codescene等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考 這里,查看「請求參數」一欄。

參數查詢: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('測試');
$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 當前預下單請求生成的二維碼碼串,可以用二維碼生成工具根據該碼串值生成對應的二維碼  https://qr.alipay.com/bavh4wjlxf12tper3a

訂單配置參數

所有訂單配置中,客觀參數均不用配置,擴展包已經為大家自動處理了,比如,product_code 等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考這里,查看「請求參數」一欄。

參考參數:https://docs.open.alipay.com/api_1/alipay.trade.precreate

單筆轉賬到支付寶賬戶接口

$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('測試');
$order->setAmount('0.01');
/*
    收款方賬戶類型。可取值:
    1、ALIPAY_USERID:支付寶賬號對應的支付寶唯一用戶號。以2088開頭的16位純數字組成。
    2、ALIPAY_LOGONID:支付寶登錄號,支持郵箱和手機號格式。
*/
$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

訂單配置參數

所有訂單配置中,客觀參數均不用配置,擴展包已經為大家自動處理了,比如,product_code 等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考這里,查看「請求參數」一欄。

參數查詢: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('測試');
$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);

訂單配置參數

所有訂單配置中,客觀參數均不用配置,擴展包已經為大家自動處理了,比如,product_code 等參數。

所有訂單配置參數和官方無任何差別,兼容所有功能,所有參數請參考這里,查看「請求參數」一欄。

小程序支付接入文檔:https://docs.alipay.com/mini/introduce/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();
$order = new \EasySwoole\Pay\AliPay\RequestBean\OrderFind();
$order->setOutTradeNo(time().'123456');
$aliPay = $pay->aliPay($aliConfig);

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

官方參數查詢: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));

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

查詢轉賬訂單接口

$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));

官方參數查詢: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));

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

交易關閉接口

$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));

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

查詢對賬單下載地址

$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));

官方參數查詢:https://docs.open.alipay.com/api_15/alipay.data.dataservice.bill.downloadurl.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();

$param = [];//偽代碼,post數據
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);

服務器確認收到異步通知字符串獲取

可通過調用如下方法得到響應支付寶的異步通知字符串:'success'/'failure'

\EasySwoole\Pay\AliPay\AliPay::success(); // 成功響應
\EasySwoole\Pay\AliPay\AliPay::fail(); // 失敗響應
亚洲精品成人_精品成人一区_999视频在线播放_免费黄色在线_亚洲成人久久久_久久www免费视频
  • <kbd id="eqi2k"><code id="eqi2k"></code></kbd><cite id="eqi2k"><tbody id="eqi2k"></tbody></cite>
    日本高清不卡三区| 欧美fxxxxxx另类| 亚洲国产精品www| 免费观看国产成人| 国产一区白浆| 国产一区美女| 正在播放久久| 麻豆蜜桃91| 114国产精品久久免费观看| 伊人成人在线| 欧美久久成人| 日本一区免费在线观看| 欧美激情第六页| 国产福利久久精品| 国产精品久久亚洲7777| 亚洲视频精品| 色大师av一区二区三区| 免费中文日韩| 免费av一区二区三区| 国产日韩二区| 精品无人区一区二区三区竹菊 | 午夜在线观看免费一区| 亚洲激情精品| 亚洲九九精品| 精品成人久久| 亚洲国产专区校园欧美| 影音先锋久久| 日韩视频不卡| 免费在线一区二区| 久久久久久黄| 91网免费观看| 99理论电影网| 狠狠久久综合婷婷不卡| 精品日产一区2区三区黄免费| 国产精品高清一区二区三区| 99精品欧美一区二区三区| 超碰97人人人人人蜜桃| 国产麻豆乱码精品一区二区三区| 九九九九精品| 亚洲综合av一区| 欧美色一级片| 亚洲在线观看| 国产在线观看一区| 水蜜桃亚洲一二三四在线| 欧美精品九九| 国产精品综合色区在线观看| 91九色极品视频| 久久精品人成| 一区二区不卡在线| 一区二区av| 91久久国产自产拍夜夜嗨| 国产一区二区三区av在线| 日本精品二区| 亚洲激情欧美| 激情欧美一区二区三区中文字幕| 日韩av不卡在线播放| 欧美日韩亚洲一区二区三区四区| 亚洲欧洲日韩综合二区| 成人在线资源网址| 亚洲一区二区三区加勒比| 99av国产精品欲麻豆| 国产欧美综合精品一区二区| 综合视频在线观看| 久久婷婷麻豆| 少妇精品久久久久久久久久| 亚洲国产精品日韩| 国产亚洲情侣一区二区无| 欧美日韩在线高清| 国产精品福利视频| 国产自产精品| 国产一区二区三区免费不卡| 国模一区二区三区| 狠狠色综合欧美激情| 亚洲午夜精品国产| 欧美黑人xxxxx| 免费久久99精品国产自| 视频一区在线免费观看| 91久久久一线二线三线品牌| 亚洲成人自拍| av日韩中文字幕| 欧美 日韩 国产 一区| 久久人人精品| 亚洲国产精品久久久久久女王| 国严精品久久久久久亚洲影视| 国产综合婷婷| 欧洲一区二区日韩在线视频观看免费| 伊人久久大香线蕉av超碰演员| 久久精品第九区免费观看| 99精品欧美一区二区三区| 亚洲高清在线观看一区| 亚洲日本无吗高清不卡| 欧美福利精品| av一区观看| 亚洲激情婷婷| 欧美日韩一区二区三| 久久久av水蜜桃| 99精品99久久久久久宅男| 亚洲精品激情| 欧美久久久久| 在线成人av电影| 欧美日韩免费观看一区| 精品久久中出| 97夜夜澡人人双人人人喊| 91久久午夜| 国产综合自拍| 很黄很黄激情成人| 欧美成人午夜| 一区二区三区四区五区精品 | 精品一区二区久久久久久久网站| 亚洲毛片网站| 一区在线观看| 激情婷婷久久| 亚洲视频日本| 韩日欧美一区| 黄色成人在线网址| 欧美日韩国产三区| 欧美.日韩.国产.一区.二区| 三级三级久久三级久久18| 欧美一级爱爱| 日韩三级在线播放| 日本婷婷久久久久久久久一区二区| 99精品欧美一区二区三区| 成人区精品一区二区| 免费永久网站黄欧美| 久久久久久久久久码影片| 98国产高清一区| 粉嫩av一区二区三区免费观看| 久久久人人人| 国产精品大全| 精品视频第一区| 日韩高清dvd| 欧美a级一区| 国模精品一区二区三区| 一区二区国产精品| 久久青青草原一区二区| 精品国产一区二区三区麻豆小说 | 亚洲图片欧洲图片日韩av| 一区不卡字幕| 国产综合精品| 性伦欧美刺激片在线观看| 超碰97人人人人人蜜桃| 麻豆精品传媒视频| 在线成人av电影| 黄色工厂这里只有精品| 国内久久视频| 亚洲综合电影一区二区三区| 久久青青草原一区二区| 欧美视频观看一区| 亚洲人成77777| aa亚洲婷婷| 久久这里有精品15一区二区三区| 国产v亚洲v天堂无码| 五月天丁香综合久久国产 | 激情五月综合色婷婷一区二区| 精品无码久久久久久久动漫| 一本色道婷婷久久欧美| 亚洲精品乱码| 精品不卡一区二区三区| 亚洲欧洲精品一区二区三区波多野1战4 | 久久亚洲精品伦理| 国产一区二区三区黄| 国产一区二区中文| 日韩视频一区二区三区在线播放免费观看 | 免费电影一区| 一区二区高清视频| 亚洲综合国产激情另类一区| 久久久亚洲综合网站| 亚洲福利电影| 国产精品自拍首页| 国内外成人免费视频| 久久精品天堂| 亚洲 国产 日韩 综合一区| 国产欧美日本在线| 欧美日本国产精品| 国产日韩精品视频一区二区三区| 国产伦精品一区二区三区在线| 欧美特黄视频| 狠狠色综合网站久久久久久久| 欧美日韩国产综合在线| 国产精品二区三区四区| 在线精品一区| 明星裸体视频一区二区| 另类国产ts人妖高潮视频| 亚洲黄色一区二区三区| 老司机免费视频久久| 激情欧美日韩一区| 免费在线观看91| 91九色偷拍| 亚洲黄色三级| 欧美一区二区三区在线播放| 成人av资源网| 国产欧美日韩一级| 夜夜爽99久久国产综合精品女不卡| 久久综合九色综合久99| 亚洲小说区图片区| 日韩欧美精品在线不卡| 国产精品亚洲综合| 国产精品久久久久毛片大屁完整版| 一区二区欧美日韩| 久久国产精品 国产精品|