ctf0 / laravel-paymob
此包已被弃用,不再维护。未建议替代包。
laravel 的 paymob 集成
v2.0.0
2022-09-05 08:16 UTC
Requires
- illuminate/support: ^7.0|^8.0|^9.0
README
Laravel PayMob
Paymob 的 laravel 集成。
当前支持
安装
-
安装包
composer require ctf0/laravel-paymob
-
使用以下命令发布包资源
php artisan vendor:publish --provider="ctf0\PayMob\PayMobServiceProvider"
配置
设置
-
将包路由添加到您的
routes/web.php
中,例如。Route::group([ 'prefix' => 'orders', 'as' => 'order.', 'middleware' => 'auth', ], function () { ctf0\PayMob\PayMobRoutes::routes(); });
-
将
Billable
添加到您将要计费的模式中。 -
接下来添加
getBillingData()
,它应返回创建订单所需的所有字段,有关更多信息请查看 paymob 要求。- 所有可选字段已全部处理。
use Illuminate\Database\Eloquent\Model; use ctf0\PayMob\Integrations\Contracts\Billable; class Client extends Model implements Billable { // ... public function getBillingData(): array { return [ 'email' => $this->email, 'first_name' => $this->first_name, 'last_name' => $this->last_name, 'street' => $this->address, 'phone_number' => $this->phone_number, ]; } }
用法
# 正常
-
更新
paymob.controller
为您自己的控制器,该控制器应具有 3 个方法您可以通过
DummyController
获取更详细的概述。类型 @method 返回 GET checkOut
返回用户将点击结账按钮的视图 POST process
获取选定的支付类型并向 paymob 服务器发送请求 GET complete
检查交易 hmac 并将其保存到您的服务器,有关更多信息请查看 此处。
# 退款
-
您只需调用
PayMob::refund
并传递transaction_id
和amount_in_pounds
,即可退款,例如。有关更多信息请查看 此处
PayMob::refund(655, 10);
安全
如果您发现任何与安全相关的问题,请通过电子邮件发送到 ctf0-dev@protonmail.com。