jlorente/laravel-payu

Laravel >=5.7 integration for the PayU PHP SDK package.
5,641
Install
composer require jlorente/laravel-payu
Latest Version:1.0.2
PHP:>=7.0.0
License:BSD-3-Clause
Last Updated:Jun 25, 2021
Links: GitHub  ·  Packagist
Maintainer: jlorente

PayU SDK for Laravel

Laravel integration of the PayU PHP SDK.

Installation

The preferred way to install this extension is through composer.

With Composer installed, you can then install the extension using the following commands:

$ php composer.phar require jlorente/laravel-payu

or add

...
    "require": {
        "jlorente/laravel-payu": "*"
    }

to the require section of your composer.json file.

Configuration

  1. Register the ServiceProvider in your config/app.php service provider list.

config/app.php

return [
    //other stuff
    'providers' => [
        //other stuff
        \Jlorente\Laravel\PayU\PayUServiceProvider::class,
    ];
];
  1. Add the following facade to the $aliases section.

config/app.php

return [
    //other stuff
    'aliases' => [
        //other stuff
        'PayU' => \Jlorente\Laravel\PayU\Facades\PayU::class,
    ];
];
  1. Publish the package configuration file.
$ php artisan vendor:publish --provider='Jlorente\Laravel\PayU\PayUServiceProvider'
  1. Set the api_key and api_secret in the config/payu.php file or use the predefined env variables.

config/payu.php

return [
    'api_key' => 'YOUR_API_KEY',
    'api_login' => 'YOUR_API_LOGIN',
    'merchant_id' => 'YOUR_MERCHANT_ID',
    'language' => 'YOUR_LANGUAGE' // Currently 'en, 'es', 'pt (default 'es')
    'is_test' => 'YOUR_IS_TEST' // true or false
    //other configuration
];

or .env

//other configurations
PAYU_API_KEY=<YOUR_API_KEY>
PAYU_API_LOGIN=<YOUR_API_LOGIN>
PAYU_MERCHANT_ID=<YOUR_MERCHANT_ID>
PAYU_LANGUAGE=<YOUR_LANGUAGE>
PAYU_IS_TEST=<YOUR_IS_TEST>

Usage

You can use the facade alias PayU to execute the PHP SDK methods through their classes. Note that the class name PayU prefix should be avoided.

PayU::tokens()::create($params);
PayU::payments()::doAuthorizationAndCapture($params);
PayU::reports()::getOrderDetail($parameters);

The authentication params will be automaticaly injected.

License

Copyright © 2020 José Lorente Martín jose.lorente.martin@gmail.com.

Licensed under the BSD 3-Clause License. See LICENSE.txt for details.

Related Packages

jlorente/laravel-zadarma

Laravel ^5.6 integration for the Jlorente Zadarma package.

13,729 3
jlorente/laravel-pushy

Laravel integration for the Pushy SDK including a notification channel

12,517 2
jlorente/laravel-credit-cards

Laravel >=5.6 integration for the PHP Credit Cards package that allows to perfor...

38,796 7
jlorente/laravel-esendex

Laravel 5.6 integration for the Esendex SDK.

24,946 2
jlorente/laravel-appsflyer

Laravel 5.6 integration for the Jlorente Appsflyer package.

6,520 0