asdh / laravel-khalti
一个用于验证Khalti支付的Laravel包。
1.0
2020-05-25 05:43 UTC
Requires
- php: ^7.2.5
Requires (Dev)
- orchestra/testbench: ^3.8|^4.0|^5.0
- phpunit/phpunit: ^8.0|^9.0
This package is auto-updated.
Last update: 2024-08-29 23:03:21 UTC
README
用于验证Khalti支付的包。
安装
composer require asdh/laravel-khalti
发布配置文件
要发布配置文件,请运行以下命令。
php artisan vendor:publish --provider="AsDh\KhaltiServiceProvider" --tag="khalti"
此命令将在配置目录中添加 khalti.php
文件,您可以在其中添加公钥和私钥。
它看起来像这样。
<?php return [ /** * The public key that you receive from khalti */ 'public_key' => env('KHALTI_PUBLIC_KEY'), /** * The secret key that you receive from khalti */ 'secret_key' => env('KHALTI_SECRET_KEY'), /** * The url that is used to verify khalti payment */ 'verification_url' => env('KHALTI_VEFIRICATION_URL', 'https://khalti.com/api/v2/payment/verify/') ];
使用方法
<?php namespace App\Http\Controllers; use AsDh\Khalti; use App\Http\Controllers\Controller; use Illuminate\Http\Request; class KhaltiVerificationController extends Controller { public function verify(Request $request, Khalti $khalti) { $khalti->withToken($request->token) ->withAmount((int) $request->amount) ->verify(); if($khalti->hasError()) { $errorMessage = $khalti->errorMessage(); // perform your action return $errorMessage; } // The payment is verified // perform your action return $khalti->response(); } }
amount
必须以paisa为单位。 token
是在成功支付后从Khalti获得的。
您不仅可以通过检查是否有错误来验证支付,还可以这样验证支付是否已验证。
<?php namespace App\Http\Controllers; use AsDh\Khalti; use App\Http\Controllers\Controller; use Illuminate\Http\Request; class KhaltiVerificationController extends Controller { public function verify(Request $request, Khalti $khalti) { $khalti->withToken($request->token) ->withAmount((int) $request->amount) ->verify(); if($khalti->isVerified()) { $response = $khalti->response(); // perform your action return $response; } // The payment is not verified // perform your action return $khalti->errorMessage(); } }
有一个 statusCode
方法可以获取Khalti响应的状态码。
$khalti->statusCode();
如果此包有任何问题,请创建一个问题。我将很高兴解决这个问题。