abeerelghool / payment
payment package
Requires
- php: ^7.1|^8.0
- guzzlehttp/guzzle: ~7
- illuminate/support: ^5.0|^6.0|^7.0|^8.0|^9.0
This package is not auto-updated.
Last update: 2025-05-06 02:42:36 UTC
README
This package provides simple implementation for payment gateways ("Hyper Pay" for now).
installation
composer require abeerelghool/payment
or
composer require abeerelghool/payment --ignore-platform-reqs
if you are using laravel version less than 8
How to use
First you have to initialize the Payment Type Class (Visa or Mada) and pass to it the amount (required) and the user model (nullable)
<?php use Payment\Gateways\HyperPay\Visa; $visa = new Visa(float $amount, User $user); // or $mada = new Mada(float $amount, User $user);
now pass the Payment Type Class (Visa or Mada) to getCheckoutId method to get your checkout id
<?php use Payment\Payment; $checkout_id = Payment::getCheckoutId($visa);
then you have to return a view for the user to enter his data.
fortunately this package provides a view file that you can use. if you wish to overwrite it you have to publish the assets using:
php artisan vendor:publish
<?php return view('payment::index', $checkout_id);
then you can check the response you get with checkoutStatus method that provided by the Payment class
<?php Payment::checkoutStatus(request('id'), request('resourcePath'), $request->type);
Notes
All the routes and methods are predefined in this package you can use them or you can define your own
You can define your credentials by overwritting the config file
if you wish to put this package to production mood you have to set the payment_mood
to 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 ] ];