alkhatibdev / laravel-sudani
Sudani SPay API 集成
v1.0.0
2022-07-15 13:17 UTC
Requires
- phpseclib/phpseclib: ^2.0
README
使用 Laravel 集成 Sudani SPay API
简介
Laravel Sudani 是 Laravel 和 Sudani SPay API 的集成,旨在简化过程和 API 调用,让开发者专注于其他集成部分和逻辑。另请参阅 Laravel Zain。
安装
要求
- PHP >=
7.4.x
- Laravel >=
7.x
通过 composer 安装
composer require alkhatibdev/laravel-sudani
发布配置
php artisan vendor:publish --tag=laravel-sudani-config
一个 laravel-sudani.php
配置文件将被发布到您的 configs
目录,内容如下
<?php return [ 'base_url' => env('SUDANI_SERVER_BASE_API_URL'), 'provider_key' => env('SUDANI_PROVIDER_KEY'), 'service_code' => env('SUDANI_SERVICE_CODE'), 'username' => env('SUDANI_USERNAME'), 'password' => env('SUDANI_PASSWORD'), 'enable_logging' => false, ];
请勿忘记在您的 .env
文件中设置所有这些变量
SUDANI_SERVER_BASE_API_URL=http://196.1.241.110/SPayAPI/Service/ SUDANI_PROVIDER_KEY=xxxxxxxx SUDANI_SERVICE_CODE=xxxxx-xxxx-xxxx-xxxx-xxxxxxxxx SUDANI_USERNAME=xxxxxx SUDANI_PASSWORD=xxxxxx
用法
初始支付/订阅
use AlkhatibDev\LaravelSudani\Facades\Sudani; // Initiate payment request $response = Sudani::initiate($phone)
当 initiate
支付请求成功发送后,将向 $phone
电话号码发送带有 OTP
码的短信,并且 $response
将包含一个 requestId
,您应将其保存到下一步 verify
。
验证支付/订阅
$response = Sudani::verify($otp, $requestId)
检查订阅
$response = Sudani::checkSubscription($phone)
取消订阅
$response = Sudani::unsubscribe($phone)
登录并缓存 SPay 令牌
默认情况下,该包将加密密码并自动登录,获取 token
并用于每个请求的动作 initiate
、verify
等。如果您想缓存令牌并用于后续请求,您可以像这样请求一个 token
$token = Sudani::token()
并且您可以将其缓存并用于每个请求,例如,下一次 24 小时内
// $token = getCachedToken() $response = Sudani::withToken($token)->initiate($phone) $response = Sudani::withToken($token)->verify($phone) ...
日志记录
您可以通过包配置文件启用日志记录
'enable_logging' => true,
其他包
-
Laravel Zain DSP API 集成
许可
Laravel Sudani 是开源软件,受 MIT 许可证 许可。