這應該充當使用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請求的請求和處理。