ctf0/laravel-paymob

此包已被弃用,不再维护。未建议替代包。

laravel 的 paymob 集成

资助包维护!
ctf0

v2.0.0 2022-09-05 08:16 UTC

This package is auto-updated.

Last update: 2024-06-20 20:52:36 UTC


README

Laravel PayMob
Latest Stable Version Total Downloads

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_idamount_in_pounds,即可退款,例如。

    有关更多信息请查看 此处

    PayMob::refund(655, 10);

安全

如果您发现任何与安全相关的问题,请通过电子邮件发送到 ctf0-dev@protonmail.com