laravelhungary/laravel-barion

Simple Laravel wrapper for the API of the Barion online payment system
44,679 13
Install
composer require laravelhungary/laravel-barion
Latest Version:v1.4
PHP:>=5.6.0
Laravel:5 – 8
License:MIT
Last Updated:Aug 12, 2023
Links: GitHub  ·  Packagist
Maintainer: hocza

Stand With Ukraine

Use the Barion API with Laravel

Travis StyleCI SensioLabs Insight license Packagist Total Downloads

Laravel-Barion is provides an easy way to use the Barion API with Laravel applications. Under the hood there is just a thin wrapper to make API calls simple.

Installation

  1. Install the package using composer:

composer require laravelhungary/laravel-barion

If you're using Laravel 5.5, you're done, the following steps are being done automatically.

  1. Register the service provider in the app.php config file
LaravelHungary\Barion\BarionServiceProvider::class,
  1. Register the Barion facade (optional)
'Barion' =>  LaravelHungary\Barion\BarionFacade::class

Configuration

Laravel-Barion comes preconfigured, you only need to set your POS key in the .env file:

BARION_POS_KEY=<my pos key>

The Barion environment defaults to test.barion.com. To use the live instead, set

BARION_LIVE_ENV=true.

If you'd like to tweak the configuration values, publish the config file:

artisan vendor:publish --provider="LaravelHungary\Barion\BarionServiceProvider"

Usage

You can either resolve the Barion class from the Service Container using Laravel's dependency injection, or simply use the provided Facade.

There are two convenience methods for the two most-often used API calls:

Get the payment status
Barion::getPaymentState('my-payment-id')
Start a Payment
Barion::paymentStart([
    'PaymentType' => PaymentType::IMMEDIATE,
    'GuestCheckOut' => true,
    'FundingSources' => [FundingSource::ALL],
    'Locale' => Locale::HU,
    'Currency' => Currency::HUF,
    'Transactions' => [
        [
            'POSTransactionId' => 'ABC-1234',
            'Payee' => 'example@email.com',
            'Total' => 4990,
            'Items' => [
                [
                    'Name' => 'Example item',
                    'Description' => 'This is a sample description',
                    'Quantity' => 1,
                    'Unit' => 'db',
                    'UnitPrice' => 4990,
                    'ItemTotal' => 4990
                ]
            ]
         ]
    ]
])

All other API calls are accessible using either get or post:

Barion::get('/api/url')
Barion::post('/api/url', ['my-data' => 'some value'])

POS Key is automatically appended to each request.

License

Laravel-Barion is open source software licensed under the MIT License.

Related Packages

doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

644,549,754 9,698
laravel/framework

The Laravel Framework.

593,882,149 34,959
laravel/tinker

Powerful REPL for the Laravel framework.

507,193,856 7,441
laravel/serializable-closure

Laravel Serializable Closure provides an easy and secure way to serialize closur...

423,477,751 607
nunomaduro/collision

Cli error handling for console/command-line PHP applications.

399,241,428 4,660

Version History

Version Released PHP Laravel License
v1.4 >=5.6.0 >=5.1 MIT
v1.3 >=5.6.0 >=5.1 MIT
v1.2.1 >=5.6.0 >=5.1 MIT
v1.1.4 >=5.6.0 5.* MIT
v1.1.3 >=5.6.0 5.1.*|5.2.*|5.3.*|5.4.*|5.5.*|5.6.* MIT