API M-Pesa Express, также известный как API STK/NI Push, позволяет бизнесу инициировать онлайн-платежи от имени клиентов, обеспечивая бесшовный опыт платежей. Интегрируя этот API, бизнес может отправить запрос на платеж на телефон клиента, позволяя ему авторизовать платеж, введя свой PIN M-PESA. Это исключает необходимость запоминать номера бизнес-платежей или номера счетов.
API использует метод POST и требует токена доступа, сгенерированного через API авторизации. Работа включает в себя настройку необходимых параметров и отправку запроса API, который затем проверяется и запускает запрос STK Push на телефон клиента. Клиент авторизует платеж, введя свой PIN M-PESA, а M-PESA обрабатывает платеж, проверяя PIN, списывая со счета клиента и зачисляя на счет бизнеса.
Тело запроса API требует параметров, таких как BusinessShortCode, Password, Timestamp, TransactionType, Amount, PartyA, PartyB, PhoneNumber, CallBackURL, AccountReference и TransactionDesc. API возвращает ответ с параметрами, такими как MerchantRequestID, CheckoutRequestID, ResponseCode, ResponseDescription и CustomerMessage.
После обработки транзакции M-PESA отправляет обратный вызов с результатом на указанный CallBackURL. Результат обратного вызова включает параметры, такие как MerchantRequestID, CheckoutRequestID, ResultCode, ResultDesc и CallbackMetadata. CallbackMetadata содержит дополнительные подробности транзакции, такие как Amount, MpesaReceiptNumber, TransactionDate и PhoneNumber.
Также предоставляются коды ошибок для диагностики и решения проблем, возникших во время реализации. Эти коды ошибок включают DS timeout, проблему с запросом push, общую ошибку запроса push, отмену запроса пользователем, недостаточный баланс, недействительную информацию инициатора, истекший срок транзакции и ошибку блокировки абонента.
dev.to
M-Pesa Express (STK Push) API Guide
