husseinsayed / laravel-paytabs
Laravel Paytabs
dev-master
2023-05-01 04:06 UTC
Requires
- laravel/framework: ^6.0||^7.0||^8.0||^9.0
This package is auto-updated.
Last update: 2024-09-30 02:13:11 UTC
README
安装
首先通过Composer安装此包。只需在终端运行以下命令-
composer require husseinsayed/laravel-paytabs
此操作完成后,包将自动适用于 Laravel 5.6 及以上版本,否则,最终步骤是添加服务提供者。打开 config/app.php
文件,并向提供者数组添加一个新条目。
'providers' => [ ... Husseinsayed\Paytabs\PaytabsServiceProvider::class, ],
现在添加别名。
'aliases' => [ ... 'Paytabs' => Husseinsayed\Paytabs\Facades\PaytabsFacade::class, ],
别忘了将您的Paytabs凭据添加到您的 .env 文件中。
php artisan vendor:publish --provider="Husseinsayed\Paytabs\PaytabsServiceProvider"
然后,如果您想使用而非env,请填写 config/paytabs.php
文件中的凭据。
PAYTABS_PROFILE_ID=2**** PAYTABS_SERVER_KEY=S6****6D2J-J2Z****H6K-6T2****MW PAYTABS_CHECKOUT_LANG=en PAYTABS_CURRENCY=EGP VERIFY_ROUTE_NAME=payment.verify
示例
创建支付页面
Route::get('payment/paytabs', function () { $user = auth()->user(); $result = Paytabs::pay(10.00, $user->id, $user->name, $user->email, $user->phone, [ 'customer_details' => [ 'country' => 'EG', 'state' => 'C' ] ]); return $result; });
创建周期性支付
在第一次支付中创建Tokenize请求
Route::get('payment/paytabs', function () { $user = auth()->user(); $result = Paytabs::payRecurring(10.00, $user->id, $user->name, $user->email, $user->phone, [ 'customer_details' => [ 'country' => 'EG', 'state' => 'C' ] ],2); return $result; });
Route::get('payment/paytabs', function () { $user = auth()->user(); $recurring_token=$token;//token returned from the previous request $recurring_tranRef=$tran_ref;//tran_ref returned from the previous request $result = Paytabs::payRecurring(10.00, $user->id, $user->name, $user->email, $user->phone, [ 'customer_details' => [ 'country' => 'EG', 'state' => 'C' ] ],1,'recurring',$recurring_token,$recurring_tranRef); return $result; });
验证支付
Route::get('payment/verify/{ref}', function ($ref) { $result = Paytabs::verify($ref); return $result; }); you will need to exclude your paytabs_response route from CSRF protection