hemmy / dpo-laravel
V1.0.0
2021-10-21 00:37 UTC
Requires
- php: ^7.4|^8.0
- illuminate/contracts: ^8.0
- spatie/laravel-package-tools: ^1.1
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.3
- spatie/laravel-ray: ^1.9
- vimeo/psalm: ^4.4
This package is not auto-updated.
Last update: 2024-10-02 05:40:08 UTC
README
最佳DPO Laravel包,简单至极
此包将帮助您将DPO支付API添加到您的Laravel应用程序中,我们欢迎贡献和支持,以使其变得更好。
功能
- 创建支付令牌(在DPO服务器上初始化订单)
- 验证支付令牌(检查交易状态)
- 直接支付(直接将订单重定向到DPO支付页面)
- 获取支付令牌
- 数据库迁移以保存交易详情
- 易于使用
- 持续更新
工作原理
- 创建支付令牌
- 验证令牌
- 重定向到DPO支付页面
- 获取响应
- 完成
该包在幕后为您完成所有这些😂
基本用法示例。
<?php use Hemmy\Dpo\Dpo; $dpo = new Dpo(); $order = [ 'paymentAmount' => "10000", 'paymentCurrency' => "TZS", 'customerFirstName' => "Novath", 'customerLastName' => "Thomas", 'customerAddress' => "Tanzania", 'customerCity' => "Dodoma", 'customerPhone' => "0752771650", 'customerEmail' => "novath@hemmy.co.tz", 'companyRef' => "34TESTREFF" ]; // Now make payment $dpo->directPayment($data); // Its done! Simple right! 😂
安装
通过Composer安装包
composer require hemmy/dpo-laravel
现在您可以发布配置文件和迁移
php artisan vendor:publish --provider="Hemmy\Dpo\DpoServiceProvider" --tag="dpo-laravel-migrations"
迁移数据库表 [可选]
php artisan migrate
配置文件
<?php return [ "company_token" => env("DPO_COMPANY_TOKEN", "9F416C11-127B-4DE2-AC7F-D5710E4C5E0A"), "account_type" => env("DPO_ACCOUNT_TYPE", "3854"), 'is_test_mode' => env("DPO_IS_TEST_MODE", true), "back_url" => env("DPO_BACK_URL"), "redirect_url" => env("DPO_REDIRECT_URL") ];
上述详情来自DPO公开文档中的测试/沙盒环境
更新 .env 文件并添加正确信息
DPO_COMPANY_TOKEN = "YOUR_DPO_COMPANY_TOKEN" DPO_ACCOUNT_TYPE = "YOUR_DPO_ACCONT_TYPE" DPO_IS_TEST_MODE = "true" # true|false DPO_BACK_URL ="YOUR_APPLICATION_BACK_URL" DPO_REDIRECT_URL = "APPLICATION_REDIRECT_URL_AFTER_RESPONSE_FROM_DPO"
用法
- 创建一个与以下示例匹配的订单数组
$order = [ 'paymentAmount' => "10000", 'paymentCurrency' => "TZS", 'customerFirstName' => "Novath", 'customerLastName' => "Thomas", 'customerAddress' => "Tanzania", 'customerCity' => "Dodoma", 'customerPhone' => "0752771650", 'customerEmail' => "novath@hemmy.co.tz", 'companyRef' => "34TESTREFF" ];
- 现在您可以选择直接支付或先创建Token,然后再进行支付
- 从直接支付开始
$dpo = new Dpo; return $dpo->directPayment($data); // this will redirect user to DPO Payment page
- 如果您想保存详细信息,这是理想的步骤 [生成Token,进行支付]
- 获取Token
$token = $dpo->createToken($data); // return array of response with transaction code // you can save or do what ever you want with the response
- 获取支付Url
$dpo->getPaymentUrl($token);
- 将用户重定向到支付页面
return Redirect::to($payment_url);
正如[Novath Thomas]常说的
系统安全与复杂性之间有很大区别,复杂性会带来伤害,API不应该复杂,这是引入API的主要目标之一
我们希望有更多的贡献来使包更加安全和可读。
许可证
该项目采用MIT许可证。