Use the Barion API with Laravel
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.
- Install the package using composer:
composer require laravelhungary/laravel-barion
- Register the service provider in the
- Register the Barion facade (optional)
'Barion' => LaravelHungary\Barion\BarionFacade::class
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,
If you'd like to tweak the configuration values, publish the config file:
artisan vendor:publish --provider="LaravelHungary\Barion\BarionServiceProvider"
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
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@example.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
Barion::post('/api/url', ['my-data' => 'some value'])
POS Key is automatically appended to each request.
Laravel-Barion is open source software licensed under the MIT License.