laraditz/xenopay
Laravel SDK for Xenopay payments. Authenticate via facade/container, create and view bills with access tokens, optional default credentials via .env, plus included migration. Returns XenopayResponse with helpers for status, message, data, and errors.
Xenopay SDK for Laravel.
Via Composer
$ composer require laraditz/xenopay
Edit the config/app.php file and add the following line to register the service provider:
'providers' => [
...
Laraditz\Xenopay\XenopayServiceProvider::class,
...
],
Tip: If you're on Laravel version 5.5 or higher, you can skip this part of the setup in favour of the Auto-Discovery feature.
You can set default Xenopay account in your .env so that you do not need to pass it everytime you login.
...
XENOPAY_EMAIL=
XENOPAY_PASSWORD=
...
Execute migration file:
php artisan migrate
Example usage as below snippet:
// using Facade
$response = \Xenopay::auth()->login(['email' => 'test@mail.com', 'password' => 'password']);
// using Service Container
$response = app('Xenopay')->auth()->login(['email' => 'test@mail.com', 'password' => 'password']);
// login
$response = \Xenopay::auth()->login(); // if u have set default account in .env, do not need to pass anything
// create bill
$response = \Xenopay::bill()->withToken($access_token)->create([
'ref_no' => 'youruniquereferenceno',
'amount' => 1,
'description' => 'your description here.',
'contact' => '0121234567',
'redirect_url' => 'https://yourapp.com',
]);
// view bill
$response = \Xenopay::bill()->withToken($access_token)->view($id);
The request returns an instance of Laraditz\Xenopay\XenopayResponse, which provides a variety of methods that may be used to inspect the response:
$response->isSuccess() : bool; // true or false
$response->status() : int; // http status code. e.g. 200, 400, 500 etc.
$response->message() : string; // message for the response. e.g. "Invalid data".
$response->data() : mixed; // response content
$response->errors() : array; // usually contain validation errors
Please see the changelog for more information on what has changed recently.
MIT. Please see the license file for more information.
How can I help you explore Laravel packages today?