laraman / beyonic
Laravel package for working with Beyonic Mobile Money APIs
v1.0.2
2020-01-31 10:59 UTC
Requires
This package is auto-updated.
Last update: 2025-03-29 00:32:52 UTC
README
Laraman Beyonic is a Laravel package for working with Beyonic Mobile Money APIs.
Requirements
- Laravel v5.0+
- Beyonic API Token
Note
- For NOW this packages works with Collection Requests, Collections and Payments. More options are coming soon.
Installation
- To get started, install the
laraman/beyonic
package.
composer require laraman/beyonic
-
For Laravel <=5.4, register the Facade in the
app.php
file inside config directory -
To List of providers add:
Laraman\Beyonic\BeyonicServiceProvider::class,
- To alias add:
'LaramanBeyonic' => Laraman\Beyonic\Facades\BeyonicFacade::class,
- For Laravel >5.4, NO need to worry, the
LaramanBeyonic
facade will be automatically discovered and loaded for you.
Environment files
- Add
BEYONIC_API_KEY
to your.env
file and provide a valid Beyonic Token. - You can also publish the config file
beyonic.php
to yourconfig
directory and make necessary adjustments but this is optinal.
php artisan vendor:publish --provider="Laraman\Beyonic\BeyonicServiceProvider"
How to use
- Inside your controller, import
LaramanBeyonic
.
use LaramanBeyonic;
-
Then in your controller method, you can the make the various requests, follow the Beyonic API Documentation and format your request body accordingly.
-
You can then leverage on the
LaramanBeyonic
Methods to make your requests simpler.
Collection Requests.
- To make collection request, you can use the following methods.
Method Description | Method | Argument | Expects Argument | Comment |
---|---|---|---|---|
Make Collection Request | createCollectionRequest() |
$data | Mandatory | Array of objects |
Get all Collection Requests | getAllCollectionRequests() |
$data or NULL | Optional | You can get All or Filter records |
Get a Collection Request | getCollectionRequest() |
$data | Mandatory | Get a specific record |
Update a Collection Request | updateCollectionRequest() |
$data, $id | Mandatory | You must have permission |
Delete a Collection Request | deleteCollectionRequest() |
$id | Mandatory | You must have permission |
Collections.
- To manage your collections, you can use the following methods.
Method Description | Method | Argument | Expects Argument | Comment |
---|---|---|---|---|
Get all Collections | getCollections() |
$data or NULL | Optional | You can get All or Filter records |
Get a Collection | getCollection() |
$data | Mandatory | Get a specific record |
Delete a Collection Request | deleteCollection() |
$id | Mandatory | You must have permission |
Payments.
- To send money to (Pay) mobile users, you can use the following methods.
Method Description | Method | Argument | Expects Argument | Comment |
---|---|---|---|---|
Make Payment Request | createPayment() |
$data | Mandatory | Array of objects |
Get all Payments | getAllPayments() |
$data or NULL | Optional | You can get All or Filter records |
Get a Payment record | getPayment() |
$data | Mandatory | Get a specific record |
Update Payment | updatePayment() |
$data, $id | Mandatory | You must have permission |
Delete Payment | deletePayment() |
$id | Mandatory | You must have permission |
Example.
- To avoid unncessary errors, you may decide to wrap your request in a
try
andcatch
.
<?php ... use LaramanBeyonic; ... class PaymentController { public function createCollection(Request $request) { $requestData = [ "phonenumber" => "+80000000001", "amount" => "100.2", "currency" => "BXC", "metadata" => ["my_id"=>"123ASDAsd123"], "send_instructions" => True, "subscription_settings" => [ "start_date"=>"24/05/2019 10:30:00", "end_date"=>"24/06/2019 10:30:00", "frequency"=>"weekly" ] ]; try { $response = LaramanBeyonic::createCollection( $requestData ); ... } catch (\Exception $ex) { $error = json_decode($ex->getMessage()); ... } } }
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.