2017 © Pedro Peláez
 

ectool ecpay

ECPay for Laravel 5

image

flamelin/ecpay

ECPay for Laravel 5

  • Wednesday, May 24, 2017
  • by flamelin
  • Repository
  • 2 Watchers
  • 2 Stars
  • 978 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 9 Forks
  • 2 Open issues
  • 1 Versions
  • 16 % Grown

The README.md

Ecpay

Ecpay - Laravel 5 version


, (*1)

step 1 : Download the package
composer命令安裝, (*2)

composer require flamelin/ecpay dev-master

或者是新增package至composer.json, (*3)

"require": {
  "flamelin/ecpay": "dev-master"
},

然後更新安裝, (*4)

composer update

或全新安裝, (*5)

composer install


step 2 : Modify config file
增加config/app.php中的providersaliases的參數, (*6)

'providers' => [
  // ...
  flamelin\ECPay\EcpayServiceProvider::class,
]

'aliases' => [
  // ...
  'Ecpay' => flamelin\ECPay\Facade\Ecpay::class,
]


step 3 : Publish config to your project
執行下列命令,將package的config檔配置到你的專案中, (*7)

php artisan vendor:publish

可至config/ecpay.php中查看 預設是測試Ecpay設定, (*8)

return [
    'ServiceURL' => env('PAY_SERVICE_URL', 'https://payment-stage.ecpay.com.tw/Cashier/AioCheckOut/V2'),
    'HashKey' => env('PAY_HASH_KEY', '5294y06JbISpM5x9'),
    'HashIV' => env('PAY_HASH_IV', 'v77hoKGq4kWxNNIS'),
    'MerchantID' => env('PAY_MERCHANT_ID', '2000132'),
];


step 4 : .env中新增參數
, (*9)

#付款測試 true : 直接使用測試的特店參數, false : 使用config/ecpay.php中的參數.
APP_PAY_TEST=true

PAY_SERVICE_URL=https://payment-stage.ecpay.com.tw/Cashier/AioCheckOut/V2
PAY_HASH_KEY=5294y06JbISpM5x9
PAY_HASH_IV=v77hoKGq4kWxNNIS
PAY_MERCHANT_ID=2000132

How To Use

use Ecpay;

```php public function Demo() { //Official Example : //https://github.com/ECPay/ECPayAIO_PHP/blob/master/AioSDK/example/sample_Credit_CreateOrder.php, (*10)

//基本參數(請依系統規劃自行調整)
Ecpay::i()->Send['ReturnURL']         = "http://www.ecpay.com.tw/receive.php" ;
Ecpay::i()->Send['MerchantTradeNo']   = "Test".time() ;           //訂單編號
Ecpay::i()->Send['MerchantTradeDate'] = date('Y/m/d H:i:s');      //交易時間
Ecpay::i()->Send['TotalAmount']       = 2000;                     //交易金額
Ecpay::i()->Send['TradeDesc']         = "good to drink" ;         //交易描述
Ecpay::i()->Send['ChoosePayment']     = \ECPay_PaymentMethod::ALL ;     //付款方式

//訂單的商品資料
array_push(Ecpay::i()->Send['Items'], array('Name' => "緑界黑芝麻豆漿", 'Price' => (int)"2000",
           'Currency' => "元", 'Quantity' => (int) "1", 'URL' => "dedwed"));

//Go to ECPay
echo "緑界頁面導向中...";
echo Ecpay::i()->CheckOutString();

}, (*11)

用laravel的人開發盡量使用`CheckOutString()`回傳String的方法<br>
當然使用`CheckOut()`也是可以<br>
但如果使用的話,我猜後面可能會碰到Get不到特定Session的問題<br>

```php
//付款成功後緑界背景callback
public function doneDemo(Request $request)
{
    $arFeedback = Ecpay::i()->CheckOutFeedback($request->all());
    print Ecpay::i()->getResponse($arFeedback);
}


Example (Localhost)

Example Link : http://localhost/[your-project]/public/ecpay_demo_201702, (*12)


The Versions

24/05 2017

dev-master

9999999-dev

ECPay for Laravel 5

  Sources   Download

by AIRO

ecpay