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: 2024-10-29 05:41:10 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.
Collections.
- To manage your collections, you can use the following methods.
Payments.
- To send money to (Pay) mobile users, you can use the following methods.
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.