ovac / laravel-hubtel-payment
A Laravel package for consuming the Hubtel Payment Api
Requires
- php: >=5.6.4
- illuminate/support: ^5.4
- ovac/hubtel-payment: ~2.0.0
Requires (Dev)
- leaphub/phpcs-symfony2-standard: ^2.0.3
- orchestra/testbench: ~3.4|~3.5|~3.6
- phpmd/phpmd: ^2.6.0
- phpunit/phpunit: ~5.0|~6.0|~7.0
- satooshi/php-coveralls: ^1.0
- sebastian/phpcpd: *
- squizlabs/php_codesniffer: ^2.9.1
This package is not auto-updated.
Last update: 2024-10-27 04:18:13 UTC
README
Laravel Hubtel Payment
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
Introduction.
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.
Installation
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
Register Service Provider
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 Facade
Register package facade in config/app.php
in aliases
section
'HubtelPayment' => OVAC\LaravelHubtelPayment\Facades\LaravelHubtelPayment::class,
Publish Configuration File
php artisan vendor:publish --provider="OVAC\LaravelHubtelPayment\ServiceProvider" --tag="config"
Edit .env
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
Basic Usage
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.
Note: For advance usage, please refer to the OVAC Hubtel Payment documentation, located here.
Just use the Laravel facade alias HubtelPayment::
instead of the native calls.
Enjoy :)
The ReceiveMoney facade may be used to send a prompt to the customer's phone to receive money like a mobile-money agent as follows:
<?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.
The SendMoney facade may also be used to send money to any mobile money customer as follows:
<?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.
The Refund Facade may also refund money a customer paid in a previous transaction:
<?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.
Contributing
Thank you for considering contributing to Laravel Hackathon Starter. The contribution guide can be found in the Contribution File
Security
If you discover any security related issues, please email instead of using the issue tracker.
Credits
Reference
- Documentation/Official Page
- Official Repo: Github
- Hubtel Merchant Payment Reference
- Laravel framework
- LICENCE: MIT
- CHANGELOG
How can I thank you?
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).