Skip to content

A simple Laravel wrapper for the Barion payment API

Notifications You must be signed in to change notification settings

rgergo67/laravel-barion

 
 

Repository files navigation

Fork of laravelhungary/laravel-barion

Travis StyleCI SensioLabs Insight license Packagist

Just for fun, don't use in production!

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

  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' => '[email protected]',
            '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.

About

A simple Laravel wrapper for the Barion payment API

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%