wasksofts/mpesa

此软件包已被放弃且不再维护。作者建议使用 wasksofts-technology/mpesa 软件包。

Mpesa daraja api 库

v1.3 2021-03-25 12:06 UTC

This package is auto-updated.

Last update: 2024-06-28 22:16:56 UTC


README

这是一个Mpesa库,您可以使用它与各种框架(如laravel、codeigniter、cakephp等)一起使用。此软件包旨在帮助PHP开发者轻松实现各种Mpesa API。它基于REST API,其文档可在https://developer.safaricom.co.ke找到。

使用composer安装

$ composer require wasksofts/mpesa

使用示例

 require_once('vendor/autoload.php')

如果是过程式应用程序,请使用上述语句;如果是codeigniter 3.x,请执行以下操作:config enable $config['composer_autoload'] = 'vendor/autoload.php'(如果vendor是根文件夹),如果vendor文件在应用程序中,则应为 $config['composer_autoload'] = true,对于laravel和其他框架,它们没有问题。

 use Wasksofts\Mpesa\Mpesa;

$mpesa  = new Mpesa();
$mpesa->config('consumer_key', '');
$mpesa->config('consumer_secret', '');
$mpesa->config('pass_key', '');
$mpesa->config('initiator_name', '');
$mpesa->config('initiator_pass', '');
$mpesa->config('shortcode', '174379');
$mpesa->config('shortcode1', '');
$mpesa->config('shortcode2', '');
$mpesa->config('security_credential','');
$mpesa->config('callback_url', 'https://example.com/callback_url/');
$mpesa->config('confirmation_url', 'https://example.com/confirmation_url/');
$mpesa->config('validation_url', 'https://example.com/validation_url/');
$mpesa->config('result_url', 'https://example.com/result_url/'); 
$mpesa->config('timeout_url', 'https://example.com/timeout_url/');
$mpesa->config('env', 'sandbox');

echo " Token : " . $mpesa->oauth_token();
$mpesa->STKPushQuery('ws_CO_DMZ_297481201_09042019174418021');
$mpesa->STKPushSimulation('1','254708374149','pay now','test');
$mpesa->register_url(); 
$mpesa->c2b('1000', '254708374149', 'account');
$mpesa->b2c('200', 'BusinessPayment', '254708374149', 'payment','b2c_timeout','b2c_result'); // last two parameter define callback https://example.com/result_url.php/b2c_timeout/ or https://example.com/result_url/b2c_result/
$mpesa->b2b('10000','BusinessPayBill','60000','4','4','paytest','cool','b2b_timeout','b2b_result');
$mpesa->accountbalance('600443','4','remarks','acc_timeout','acc_result');
$mpesa->reversal('2','254708374149','1','NCR7S1UXBT','PAY NOW VIA WASKSOFT');
$mpesa->transaction_status('NCR7S1UXBT','254708374149','4','apitest');

获取响应

echo $mpesa->getResponseData();

从safaricom接收的回调json数据

for call back you can use you own implementation 
this is for testing.

use Wasksofts\Mpesa\Callback;

$callback = new Callback;
$callback::processSTKPushRequestCallback();
$callback::processC2BRequestConfirmation();
$callback::processC2BRequestValidation();
$callback::processB2CRequestCallback();
$callback::processB2BRequestCallback();
$callback::processAccountBalanceRequestCallback();
$callback::processReversalRequestCallBack();
$callback::processTransactionStatusRequestCallback();

贡献

有关详细信息,请参阅CONTRIBUTING

安全

如果您发现任何安全问题,请通过电子邮件mukamanusteven@gmail.com联系,而不是使用问题跟踪器。

鸣谢

许可协议

MIT许可协议(MIT)。有关更多信息,请参阅许可文件