PHP code example of smodav / mpesa
1. Go to this page and download the library: Download smodav/mpesa library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
smodav / mpesa example snippets
'providers' => [
SmoDav\Mpesa\Laravel\ServiceProvider::class,
],
'aliases' => [
'STK' => SmoDav\Mpesa\Laravel\Facades\STK::class,
'Simulate' => SmoDav\Mpesa\Laravel\Facades\Simulate::class,
'Registrar' => SmoDav\Mpesa\Laravel\Facades\Registrar::class,
'Identity' => SmoDav\Mpesa\Laravel\Facades\Identity::class,
],
use GuzzleHttp\Client;
use SmoDav\Mpesa\Engine\Core;
use SmoDav\Mpesa\Native\NativeCache;
use SmoDav\Mpesa\Native\NativeConfig;
. '/../some/awesome/directory');
$core = new Core(new Client, $config, $cache);
use SmoDav\Mpesa\C2B\Registrar;
$conf = 'http://example.com/mpesa/confirm?secret=some_secret_hash_key';
$val = 'http://example.com/mpesa/validate?secret=some_secret_hash_key';
$response = (new Registrar($core))->register(600000)
->onConfirmation($conf)
->onValidation($val)
->submit();
/****** OR ********/
$response = (new Registrar($core))->submit(600000, $conf, $val);
$response = (new Registrar($core))
->register(600000)
->usingAccount('paybill_1')
->onConfirmation($conf)
->onValidation($val)
->submit();
/****** OR ********/
$response = (new Registrar($core))->submit(600000, $conf, $val, null, 'paybill_1');
use SmoDav\Mpesa\Laravel\Facades\Registrar;
$conf = 'http://example.com/mpesa/confirm?secret=some_secret_hash_key';
$val = 'http://example.com/mpesa/validate?secret=some_secret_hash_key';
$response = Registrar::register(600000)
->onConfirmation($conf)
->onValidation($val)
->submit();
/****** OR ********/
$response = Registrar::submit(600000, $conf, $val);
use SmoDav\Mpesa\Laravel\Facades\Registrar;
$response = Registrar::register(600000)
->usingAccount('paybill_1')
->onConfirmation($conf)
->onValidation($val)
->submit();
/****** OR ********/
$response = Registrar::submit(600000, $conf, $val, null, 'paybill_1');
use SmoDav\Mpesa\C2B\Simulate;
$simulate = new Simulate($core)
$response = $simulate->request(10)
->from(254722000000)
->usingReference('Some Reference')
->push();
/****** OR ********/
$response = $simulate->push(10, 254722000000, 'Some Reference');
$response = $simulate->request(10)
->from(254722000000)
->usingReference('Some Reference')
->usingAccount('paybill_1')
->push();
/****** OR ********/
$response = $simulate->push(10, 254722000000, 'Some Reference', 'paybill_1');
$response = $simulate->request(10)
->from(254722000000)
->usingReference('Some Reference')
->setCommand(CUSTOMER_BUYGOODS_ONLINE)
->push();
/****** OR ********/
$response = $simulate->push(10, 254722000000, 'Some Reference', null, CUSTOMER_BUYGOODS_ONLINE);
use SmoDav\Mpesa\Laravel\Facades\Simulate;
$response = Simulate::request(10)
->from(254722000000)
->usingReference('Some Reference')
->push();
/****** OR ********/
$response = Simulate::push(10, 254722000000, 'Some Reference');
use SmoDav\Mpesa\Laravel\Facades\Simulate;
$response = Simulate::request(10)
->from(254722000000)
->usingReference('Some Reference')
->usingAccount('paybill_1')
->push();
/****** OR ********/
$response = Simulate::push(10, 254722000000, 'Some Reference', 'paybill_1');
use SmoDav\Mpesa\Laravel\Facades\Simulate;
$response = Simulate::request(10)
->from(254722000000)
->usingReference('Some Reference')
->setCommand(CUSTOMER_BUYGOODS_ONLINE)
->push();
/****** OR ********/
$response = Simulate::push(10, 254722000000, 'Some Reference', null, CUSTOMER_BUYGOODS_ONLINE);
use SmoDav\Mpesa\C2B\STK;
$stk = new STK($core);
$response = $stk->request(10)
->from(254722000000)
->usingReference('Some Reference', 'Test Payment')
->push();
/****** OR ********/
$response = $stk->push(10, 254722000000, 'Some Reference', 'Test Payment');
$response = $stk->request(10)
->from(254722000000)
->usingAccount('paybill_2')
->usingReference('Some Reference', 'Test Payment')
->push();
/****** OR ********/
$response = $stk->push(10, 254722000000, 'Some Reference', 'Test Payment', 'paybill_2');
$response = $stk->request(10)
->from(254722000000)
->usingReference('Some Reference', 'Test Payment')
->setCommand(CUSTOMER_BUYGOODS_ONLINE)
->push();
/****** OR ********/
$response = $stk->push(10, 254722000000, 'Some Reference', 'Test Payment', null, CUSTOMER_BUYGOODS_ONLINE);
use SmoDav\Mpesa\Laravel\Facades\STK;
$response = STK::request(10)
->from(254722000000)
->usingReference('Some Reference', 'Test Payment')
->push();
/****** OR ********/
$response = STK::push(10, 254722000000, 'Some Reference', 'Test Payment');
use SmoDav\Mpesa\Laravel\Facades\STK;
$response = STK::request(10)
->from(254722000000)
->usingAccount('paybill_2')
->usingReference('Some Reference', 'Test Payment')
->push();
$response = STK::push(10, 254722000000, 'Some Reference', 'Test Payment', 'paybill_2');
use SmoDav\Mpesa\Laravel\Facades\STK;
$response = STK::request(10)
->from(254722000000)
->usingReference('Some Reference', 'Test Payment')
->setCommand(CUSTOMER_BUYGOODS_ONLINE)
->push();
$response = STK::push(10, 254722000000, 'Some Reference', 'Test Payment', null, CUSTOMER_BUYGOODS_ONLINE);
use SmoDav\Mpesa\C2B\STK;
$stk = new STK($core);
$response = $stk->validate('ws_CO_16022018125');
$response = $stk->validate('ws_CO_16022018125', 'paybill_2');
use SmoDav\Mpesa\Laravel\Facades\STK;
$response = STK::validate('ws_CO_16022018125');
use SmoDav\Mpesa\Laravel\Facades\STK;
$response = STK::validate('ws_CO_16022018125', 'paybill_2');
bash
php artisan vendor:publish