PHP code example of albertoadolfo27 / mpesa_sdk

1. Go to this page and download the library: Download albertoadolfo27/mpesa_sdk 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/ */

    

albertoadolfo27 / mpesa_sdk example snippets


use MpesaSdk\MPesa;

$mpesa = new MPesa(
    apiKey: 'SUA_API_KEY',
    publicKey: 'CHAVE_PUBLICA_DA_VODACOM'
);

$response = $mpesa->customerToBusiness(
    transactionReference: 'REF123456',
    customerNumber: '25884XXXXXXX',
    amount: '100',
    thirdPartyReference: 'MEU_REF_INTERNO'
);

$response = $mpesa->businessToCustomer(
    transactionReference: 'REF789',
    customerNumber: '25884XXXXXXX',
    amount: '250',
    thirdPartyReference: 'REFCLIENTE123',
    businessCode: '171717'
);

$response = $mpesa->businessToBusiness(
    transactionReference: 'REFXYZ',
    amount: '500',
    thirdPartyReference: 'REFB2B001',
    primaryBusinessCode: '171717',
    receiverBusinessCode: '123456'
);

$response = $mpesa->reversal(
    transactionID: 'TX123456789',
    securityCredential: 'SEU_CREDENCIAL_SEGURANCA',
    initiatorIdentifier: 'INICIADOR',
    thirdPartyReference: 'REF001',
    businessCode: '171717',
    amount: '100'
);

$response = $mpesa->transactionStatus(
    thirdPartyReference: 'REF001',
    queryReference: 'TX123456789',
    businessCode: '171717'
);

$response = $mpesa->customerName(
    customerNumber: '25884XXXXXXX',
    businessCode: '171717',
    thirdPartyReference: 'NOMECONSULTA001'
);

[
  'httpCode' => 200,
  'responseCode' => 'INS-0',
  'responseDescription' => 'Request processed successfully',
  'transactionID' => '...',
  'thirdPartyReference' => '...'
]

use MpesaSdk\MPesaResponseCode;

$response = $mpesa->customerToBusiness(
    transactionReference: "TX123456",
    customerNumber: "841234567",
    amount: "100",
    thirdPartyReference: MPesa::generateUniqueReference()
);

if ($response->responseCode === MPesaResponseCode::SUCCESS) {
    echo "Transação realizada com sucesso!";
} else {
    echo "Erro: " . ($response->responseDescription ?? 'Erro desconhecido');
}

use MpesaSdk\MPesa;

$uniqueReference = MPesa::generateUniqueReference();

use MpesaSdk\MPesa;

$mpesa = new MPesa(
    apiKey: 'YOUR_API_KEY',
    publicKey: 'VODACOM_PUBLIC_KEY'
);

$response = $mpesa->customerToBusiness(
    transactionReference: 'REF123456',
    customerNumber: '25884XXXXXXX',
    amount: '100',
    thirdPartyReference: 'MY_INTERNAL_REF'
);

$response = $mpesa->businessToCustomer(
    transactionReference: 'REF789',
    customerNumber: '25884XXXXXXX',
    amount: '250',
    thirdPartyReference: 'CLIENTREF123',
    businessCode: '171717'
);

$response = $mpesa->businessToBusiness(
    transactionReference: 'REFXYZ',
    amount: '500',
    thirdPartyReference: 'REFB2B001',
    primaryBusinessCode: '171717',
    receiverBusinessCode: '123456'
);

$response = $mpesa->reversal(
    transactionID: 'TX123456789',
    securityCredential: 'YOUR_SECURITY_CREDENTIAL',
    initiatorIdentifier: 'INITIATOR',
    thirdPartyReference: 'REF001',
    businessCode: '171717',
    amount: '100'
);

$response = $mpesa->transactionStatus(
    thirdPartyReference: 'REF001',
    queryReference: 'TX123456789',
    businessCode: '171717'
);

$response = $mpesa->customerName(
    customerNumber: '25884XXXXXXX',
    businessCode: '171717',
    thirdPartyReference: 'NAMEQUERY001'
);

[
  'httpCode' => 200,
  'responseCode' => 'INS-0',
  'responseDescription' => 'Request processed successfully',
  'transactionID' => '...',
  'thirdPartyReference' => '...'
]

use MpesaSdk\MPesaResponseCode;

$response = $mpesa->customerToBusiness(
    transactionReference: "TX123456",
    customerNumber: "841234567",
    amount: "100",
    thirdPartyReference: MPesa::generateUniqueReference()
);

if ($response->responseCode === MPesaResponseCode::SUCCESS) {
    echo "Transaction completed successfully!";
} else {
    echo "Error: " . ($response->responseDescription ?? 'Unknown error');
}

use MpesaSdk\MPesa;

$uniqueReference = MPesa::generateUniqueReference();
bash
src/
├── MPesa.php              # Classe principal da SDK
├── MPesaResponse.php      # Formatação de resposta
└── MPesaResponseCode.php  # Lista de todos os códigos de resposta
bash
src/
├── MPesa.php              # Main SDK class
├── MPesaResponse.php      # Response formatting
└── MPesaResponseCode.php  # List of all response codes