Этот проект направлен на то, чтобы обеспечить простую в использовании и современную обертку PHP для M-Pesa Mozambique API.
Целевая версия M-Pesa API: V1X
Установите с помощью композитора:
composer require abdulmueid/mpesa
Загрузите конфигурацию из файла.
$ config = abdulmueid mpesa Config:: loadFromFile ( ' /path/to/config.php ' );См. Пример файла конфигурации в папке примеров.
Создайте транзакцию, используя конфигурацию.
$ transaction = new abdulmueid mpesa Transaction ( $ config );Выполнить операции API и пройти соответствующие параметры.
Инициировать сбор платежей C2B.
$ c2b = $ transaction -> c2b (
float $ amount ,
string $ msisdn ,
string $ reference ,
string $ third_party_reference
);Инициировать платеж B2C.
$ b2c = $ transaction -> b2c (
float $ amount ,
string $ msisdn ,
string $ reference ,
string $ third_party_reference
);Инициировать платеж B2B.
$ b2b = $ transaction -> b2b (
float $ amount ,
string $ receiver_party_code ,
string $ reference ,
string $ third_party_reference
);Инициировать изменение.
$ reversal = $ transaction -> reversal (
float $ amount ,
string $ transaction_id ,
string $ third_party_reference
);Запрос транзакции.
$ query = $ transaction -> query (
string $ query_reference ,
string $ third_party_reference
);Проверьте ответ
Все транзакции возвращают объект TransactionResponse . У объекта есть следующие публичные методы:
getCode() - Возвращает код ответа, т.е. INS-0
getDescription() - возвращает описание.
getTransactionID() - Возвращает идентификатор транзакции.
getConversationID() - Возвращает идентификатор разговора.
getTransactionStatus() - Возвращает статус транзакции. Заполняется только при вызове транзакции query() .
getResponse() - Возвращает полный ответ JSON объект, полученный с серверов M -PESA. Хорошо для отладки любых проблем или незарегистрированного поведения API M-Pesa.
В типичном сценарии код для проверки на успешные транзакции должен быть следующим:
$ c2b = $ transaction -> c2b (...);
if ( $ c2b -> getCode () === ' INS-0 ' ) {
// Transaction Successful, Do something here
}Этот репо предоставляет модульные тесты для проверки объектов и их взаимодействия с M-Pesa.
Для запуска тестов,
phpunit.xml и добавьте учетные данные/параметры, предоставленные M-Pesa.phpunitВсе тесты используют 1MT в качестве суммы теста.
Эта библиотека выпускается по лицензии MIT. См. Файл лицензии для получения подробной информации.