hachther/laravel-mesomb
最新稳定版本:1.8.1
Composer 安装命令:
composer require hachther/laravel-mesomb
包简介
A laravel wrapper on top of Mesomb Payment API
README 文档
README
Laravel Wrapper on top of MeSomb Payment API
Roadmap
API Features and their implementations https://mesomb.hachther.com/en/api/v1.1/schema/
| Feature | Status | Documentation |
|---|---|---|
| Payment | ☑ | Check the documentation |
| Transaction Status | ☑ | Check the documentation |
| Application Status | ☑ | Check the documentation |
| Deposits | ☑ | Check the documentation |
| Test | ☐ | |
| Better Documentation | ☐ |
Installation
Before you start, you must register your service and MeSomb and get API Access keys. Please follow this tutorial.
Install Package
composer require hachther/laravel-mesomb
Publish Configuration Files
Setting the following parameters from MeSomb
Get the information below from MeSomb after following the above tutorial.
MESOMB_APP_KEY=<ApplicationKey> MESOMB_API_HOST=https://mesomb.hachther.com MESOMB_API_VERSION=v1.1 MESOMB_ACCESS_KEY=<AccessKey> MESOMB_SECRET_KEY=<SecretKey> MESOMB_SSL_VERIFY=true
Publish configurations file
php artisan vendor:publish --tag=mesomb-configuration
Migrate Mesomb Transaction Tables
php artisan migrate
Usage
Quick Examples
Simple Collect
// OrderController.php use Hachther\MeSomb\Operation\Payment\Collect; class OrderController extends Controller { public function confirmOrder() { $request = new Collect('67xxxxxxx', 1000, 'MTN', 'CM'); $payment = $request->pay(); if($payment->success){ // Fire some event,Pay someone, Alert user } else { // fire some event, redirect to error page } // get Transactions details $payment->transactions } }
Simple Deposit
// OrderController.php use Hachther\MeSomb\Operation\Payment\Deposit; class OrderController extends Controller { public function makeDeposit() { $request = new Deposit('67xxxxxxx', 1000, 'MTN', 'CM'); $payment = $request->pay(); if($payment->success){ // Fire some event,Pay someone, Alert user } else { // fire some event, redirect to error page } // get Transactions details $payment->transactions } }
Attaching Payments to Models Directly
// Order.php use Hachther\MeSomb\Helper\HasPayments; class Order extends Model { use HasPayments; } // OrderController.php class OrderController extends Controller { public function confirmOrder(){ $order = Order::create(['amount' => 100]); $payment = $order->payment('67xxxxxxx', $order->amount, 'MTN', 'CM')->pay(); if($payment->success){ // Fire some event,Pay someone, Alert user } else { // fire some event, redirect to error page } // View Order payments via $order->payments // Get payment transaction with $payment->transaction return $payment; } }
Handle multiple applications
This is how you process if you want to handle multiple MeSomb applications with the same project.
- Set up your configuration file with the default application and other information as specified below.
- Update the applicationKey (the accessKey and the secretKey if needed) on the fly as you can see below.
// OrderController.php use Hachther\MeSomb\Operation\Payment\Collect; class OrderController extends Controller { public function confirmOrder() { $request = new Collect('67xxxxxxx', 1000, 'MTN', 'CM'); // Update applicationKey before process the payment // You also have setAccessKey and setSecretKey $payment = $request->setApplicationKey('<applicationKey>')->pay(); if($payment->success){ // Fire some event,Pay someone, Alert user } else { // fire some event, redirect to error page } // get Transactions details $payment->transactions } }
Author
Hachther LLC contact@hachther.com
Thank you to Malico (hi@malico.me) for starting this module.
统计信息
- 总下载量: 537
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-09-02