abeerelghool/payment

dev-master 2022-10-25 11:16 UTC

This package is not auto-updated.

Last update: 2024-09-23 23:55:14 UTC


README

此包提供对支付网关的简单实现(目前为"Hyper Pay")。

安装

composer require abeerelghool/payment

或者

如果你使用的laravel版本低于8,可以使用composer require abeerelghool/payment --ignore-platform-reqs

如何使用

首先,你需要初始化支付类型类(Visa或Mada),并将金额(必需)和用户模型(可选)传递给它

<?php
use Payment\Gateways\HyperPay\Visa;

$visa = new Visa(float $amount, User $user);
// or
$mada = new Mada(float $amount, User $user);

现在将支付类型类(Visa或Mada)传递给getCheckoutId方法以获取你的结算ID

<?php
use Payment\Payment;

$checkout_id = Payment::getCheckoutId($visa);

然后,你需要返回一个视图供用户输入他的数据。幸运的是,这个包提供了一个可用的视图文件。如果你希望覆盖它,你需要使用php artisan vendor:publish发布资源

<?php
return view('payment::index', $checkout_id);

然后你可以使用Payment类提供的checkoutStatus方法来检查你得到的响应

<?php
Payment::checkoutStatus(request('id'), request('resourcePath'), $request->type);

注意

此包中预定义了所有路由和方法,你可以使用它们,也可以定义自己的

你可以通过覆盖配置文件来定义你的凭证。如果你希望将此包部署到生产模式,你必须将payment_mood设置为PRODUCTION_MOOD

<?php

return [
    'hyper_pay'           => [
        'mada_entity_id'      => env('MADA_ENTITY_ID',''),
        'visa_entity_id'      => env('VISA_ENTITY_ID',''),
        'authorization_token' => env('PAYMENT_AUTHORIZATION_TOKEN',''),
        'urls'                => [
            'test_base_url'      => env('PAYMENT_URL', ''),
            'test_checkouts_url' => env('PAYMENT_URL', ''),
        ],
        'payment_mood' => env('PAYMENT_MOOD', ''), // TEST_MOOD || PRODUCTION_MOOD
    ]
];