farayaz / larapay
伊朗在线支付网关
v1.13.10
2024-08-04 23:17 UTC
Requires
- php: ^8.0
- guzzlehttp/guzzle: ^7.2
- illuminate/container: ^10.0
- illuminate/contracts: ^10.0
- illuminate/http: ^10.0
- illuminate/support: ^10.0
- morilog/jalali: 3.*
Requires (Dev)
- laravel/pint: ^1.0
- dev-main
- v1.13.10
- v1.13.9
- v1.13.8
- v1.13.7
- v1.13.6
- v1.13.5
- v1.13.4
- v1.13.3
- v1.13.2
- v1.13.1
- v1.13.0
- v1.12.2
- v1.12.1
- v1.12.0
- v1.11.1
- v1.11.0
- v1.10.2
- v1.10.1
- v1.10.0
- v1.9.6
- v1.9.5
- v1.9.4
- v1.9.3
- v1.9.2
- v1.9.1
- v1.9.0
- v1.8.1
- v1.8.0
- v1.7.0
- v1.6.0
- v1.5.0
- v1.4.0
- v1.3.0
- v1.2.0
- v1.1.1
- v1.1.0
- v1.0.0
- dev-66-refahbeta-startdate-improvement
- dev-52-add-card-in-irankish-verify-method
- dev-44-fix-tejaratbajet-error-handling
This package is auto-updated.
Last update: 2024-09-04 23:26:19 UTC
README
Larapay 是一个用于集成伊朗支付网关的 Laravel 扩展包。لاراپی یک پکیج لاراول برای اتصال به درگاههای پرداختی ایرانی است.
网关 | 在门
如果您找不到您想要的网关,请告诉我们或贡献以添加它
如果找不到您需要的网关,请告诉我们或在添加它方面做出贡献
优势 | 优点
- 简单 | 简单
- 灵活性 | 灵活性
- 费用计算 | 费用计算
安装 | 安装
您可以通过 composer 安装此包
您可以使用 composer 安装此包
composer require farayaz/larapay
使用方法 | 使用方法
要进行支付,必须完成以下 3 个步骤
为了进行支付,必须完成以下 3 个步骤
步骤 1:获取令牌 | 步骤 1:获取令牌
use Farayaz\Larapay\Exceptions\LarapayException; use Larapay; $gatewayClass = 'ZarinPal'; $gatewayConfig = [ // gateway config | تنظیمات درگاه 'merchant_id' => 'aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee', ]; $amount = 10000; $id = 1230; // transaction id | شماره تراکنش $callbackUrl = route('api.transactions.verify', $id); $nationalId = '1234567890'; $mobile = '09131234567'; try { $result = Larapay::gateway($gatewayClass, $gatewayConfig) ->request( id: $id, amount: $amount, callbackUrl: $callbackUrl, nationalId: $nationalId, mobile: $mobile ); } catch (LarapayException $e) { throw $e; } // store token in db | ذخیره توکن در دیتابیس $result['token']; $result['fee'];
步骤 2:重定向 | 步骤 2:重定向
将用户重定向到带有收到的令牌的网关
将用户重定向到带有收到的令牌的网关
try { return Larapay::gateway($gatewayClass, $gatewayConfig) ->redirect($id, $token, $callbackUrl); } catch (LarapayException $e) { throw $e; }
步骤 3:验证 | 步骤 3:验证
在用户从网关返回后检查支付状态
在用户从网关返回后检查支付状态
$params = $request->all(); try { $result = Larapay::gateway($gatewayClass, $gatewayConfig) ->verify( id: $id, amount: $amount, token: $token, params: $params ); } catch (LarapayException $e) { // transaction failed | تراکنش ناموفق throw $e; } // transaction verified | تراکنش موفق $result['result']; $result['reference_id']; $result['tracking_code']; $result['card']; $result['fee'];