ssiva/yii2-mpesa-sdk

此包为Yii2应用程序提供M-PESA Daraja API的无缝集成

v1.1.2 2023-04-14 09:40 UTC

This package is not auto-updated.

Last update: 2024-09-23 04:26:29 UTC


README

此包为Yii2应用程序提供M-PESA Daraja API的无缝集成

  • B2C(企业对消费者)
  • C2B(消费者对企业)
  • B2B(企业对企业)
  • 账户余额查询
  • 交易撤销查询
  • 交易状态查询。

安装

安装此扩展的首选方式是通过composer

运行以下命令之一:

php composer.phar require --prefer-dist ssiva/yii2-mpesa-sdk

或者

composer require --prefer-dist ssiva/yii2-mpesa-sdk

或者在您的composer.json文件的require部分添加以下内容:

"ssiva/yii2-mpesa-sdk": "*"

配置

根据需要设置配置值

  • 将文件mpesa.php复制到@app/config/mpesa.php并设置您的配置值。
  • 将组件配置添加到config/web.php中如下:
    • 引入复制的配置文件
      $mpesa = require __DIR__.'/mmpesa.php';
    • 将所需值添加到components数组中
      'mpesaDaraja' => $mpesa,

库现在可以使用了。

使用示例

<?php
namespace YOURNAMESPACE;

class CheckoutController extends Controller {
   
   public function actionCheckout(
        $mpesaDaraja = Yii::$app->mpesaDaraja->getDaraja();
        
        // authenticate
        $mpesaDaraja->authenticate();
        
        // STK Push
        $stkParams = [
            'Amount' => '2',
            'PartyA' => '2547XXXXXXXX',
            'PhoneNumber' => '2547XXXXXXXX',
            'AccountReference' => '13',
            'TransactionDesc' => 'Shopping',
        ];
       $mpesaDaraja->stkPush($stkParams);
       
       // stk push status query
       $stkQueryParams = [
         'CheckoutRequestID' => "ws_CO_290320231617432767XXXXXXXX",
       ];
       $mpesaDaraja->stkPushQuery($stkQueryParams);
       
       // transaction status query
       $statusParams = [
         'Remarks' => "Status test for RCC3LAPCEL",
         "TransactionID" => "RCC3LAPCEL",
         "Occasion" => "Optional Value for Occasion"
       ];
       $mpesaDaraja->transactionStatus($statusParams);

   }
}