Code Monkey home page Code Monkey logo

payment's Introduction

payment

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
    ]
];

payment's People

Contributors

abeer-elghool avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.