A Laravel 5.5 integration for the OVAC Hubtel Payment package.
Follow me anywhere @ovac4u | GitHub
_________ _________ | Twitter
| ___ |.-----.--.--.---.-.----.| | |.--.--. | Facboook
| | _ || _ | | | _ | __||__ | | | | Instagram
| |______||_____|\___/|___._|____| |__||_____| | Github + @ovac
|_________| www.ovac4u.com | Facebook + @ovacposts
Laravel Hubtel Payment is a Laravel 5.5 seamless integration of the OVAC Hubtel Payment php client for consuming the Hubtel Payment API and processing mobile-money transactions in a Laravel application.
With this package, it is easy to process mobile money transactions and automate Mobile Money payment from and to any mobile money subscriber in Ghana from any laravel controller.
This packages utilize Composer, for more information on how to install Composer please read the Composer Documentation.
Install via composer
composer require ovac/laravel-hubtel-payment
Note! This and next step are optional if you use laravel>=5.5 with package auto discovery feature.
Add service provider to config/app.php
in providers
section
OVAC\LaravelHubtelPayment\ServiceProvider::class,
Register package facade in config/app.php
in aliases
section
'HubtelPayment' => OVAC\LaravelHubtelPayment\Facades\LaravelHubtelPayment::class,
php artisan vendor:publish --provider="OVAC\LaravelHubtelPayment\ServiceProvider" --tag="config"
Add these lines in the application .env and use your Hubtel Merchant Account Number, ClentID, ClientSecret and callback as shown below.
Don't know what this is? checkout this documentation
HUBTEL_ACCOUNT_NUMBER=HM00000 #Your Hubtel Merchant Account Number
HUBTEL_CLIENT_ID=XXXXXXXX #Your Hubtel Merchant Client ID
HUBTEL_CLIENT_SECRET=XXXXXXXX #Your Hubtel Merchant Client Secret.
HUBTEL_CALLBACK_URL=https://example.com/payment_success #Default Callback URL
HUBTEL_SECONDARY_CALLBACK_URL=https://example.com/error
This library exposes a handfull of facade that seamlessly interfaces with the hubtel-payment php client main classes for basic usage in order to make local configuration optional.
Just use the Laravel facade alias HubtelPayment::
instead of the native calls.
Enjoy :)
<?php
use OVAC\LaravelHubtelPayment\Facades\HubtelPayment;
// NOTE: The phone number must be of type string as Laravel considers all numbers with a leading 0 to be a hex number.
$payment = HubtelPayment::ReceiveMoney()
->from('0553577261') //- The phone number to send the prompt to.
->amount(100.00) //- The exact amount value of the transaction
->description('Online Purchase') //- Description of the transaction.
->customerName('Ariama Victor') //- Name of the person making the payment.callback after payment.
->channel('mtn-gh') //- The mobile network Channel.configuration
->run(); //- Run the transaction after required data.
<?php
use OVAC\LaravelHubtelPayment\Facades\HubtelPayment;
// NOTE: The phone number must be of type string as Laravel considers all numbers with a leading 0 to be a hex number.
$payment = HubtelPayment::SendMoney()
->to('0553577261') //- The phone number to send the prompt to.
->amount(100.00) //- The exact amount value of the transaction
->description('Online Purchase') //- Description of the transaction.
->customerEmail('admin@ovac4u.com') //- Name of the person making the payment.
->channel('mtn-gh') //- The mobile network Channel.
->run(); //- Run the transaction after required data.
<?php
use OVAC\LaravelHubtelPayment\Facades\HubtelPayment;
$payment = HubtelPayment::Refund()
->transactionId(1234) //- The ID of the transaction to refund.
->amount(100.00) //- The exact amount value of the transaction
->clientReference('#11212') //- A refeerence on your end.
->description('Useless Purchase') //- Description of the transaction.
->reason('No longer needs a pen') //- Name of the person making the payment.
->full() //- Full or partial refund.
->run(); //- Run the transaction after required data.
Thank you for considering contributing to Laravel Hackathon Starter. The contribution guide can be found in the Contribution File
If you discover any security related issues, please email instead of using the issue tracker.
Why not star the github repo? I'd love the attention! Why not share the link for this repository on Twitter or HackerNews? Spread the word!
Don't forget to follow me on instagram and twitter
Thanks! Ariama Victor (ovac4u).