这应该充当使用MPESA功能的Codeigniter 3个应用程序的液位解决方案。目前,仅实施了最广泛使用的Lipa Na Mpesa(STK Push)。不过,这是一个开放项目,因此请随时添加其余功能。
config/mpesa.php包含您可能需要的MPESA配置。默认情况下,它已经带有沙盒凭据设置,因此您需要更改的只是CONSUMER_KEY和CONSUMER_SECRET ,当您创建一个新应用时,您可以从Safaricom中获得
libraries/Mpesa_lib.php是MPESA API抽象实现,其中包含您可以使用的所有方法
将所有目录复制并粘贴到您的application/目录中
从Safaricom Daraja获取您的消费者钥匙和秘密
将config/mpesa.php中的值替换为相应的凭据
将库导入您的控制器
// Load the mpesa library
$ this -> load -> library ( ' mpesa_lib ' );
// $this->mpesa_lib is how you will be accessing the library from now on在您的控制器中调用lipa_na_mpesa方法
// $phone - The phone number initiating the transaction - your customer's phone
// $amount - A non-zero amount (integer)
$ this -> mpesa_lib -> lipa_na_mpesa ( $ phone , $ amount )这应该在客户的设备上触发STK推送请求。您可以将其添加到接受电话号码和金额的API请求端点,然后将其传递到lipa_na_mpesa方法中
如果交易成功或失败,您将想知道。这就是您的回调URL的来源。这是MPESA将向您的应用程序发送有关交易的更多信息的地方。
理想情况下,您可以创建专门处理交易请求的控制器,并将回调URL映射到它。例如: controllers/payments/Handler.php可能会导致您的回调URL在site.com/payments/handler的线上。
可以通过Daraja再次找到有关该工作方式的更多详细信息。
可以通过config/mpesa.php设置回调URL
可以在此处找到有关MPESA API返回哪种信息的详细信息。
因此,您应该能够同时实施MPESA请求的请求和处理。