La API Express de M-Pesa, también conocida como API de Push STK/NI, permite a las empresas iniciar pagos en línea en nombre de los clientes, brindando una experiencia de pago sin problemas. Al integrarse con esta API, las empresas pueden enviar un recordatorio de pago al teléfono del cliente, lo que les permite autorizar el pago ingresando su PIN de M-PESA. Esto elimina la necesidad de recordar números de cuenta o números de cuenta de negocio.
La API utiliza un método POST y requiere un token de acceso generado a través de la API de Autorización. El flujo de trabajo implica que el comerciante establece los parámetros requeridos y envía la solicitud de API, que luego se valida y desencadena un recordatorio de Push STK en el teléfono del cliente. El cliente autoriza el pago ingresando su PIN de M-PESA, y M-PESA procesa el pago verificando el PIN, debiendo la cuenta del cliente y acreditando la cuenta del comerciante.
El cuerpo de la solicitud de API requiere parámetros como BusinessShortCode, Password, Timestamp, TransactionType, Amount, PartyA, PartyB, PhoneNumber, CallBackURL, AccountReference y TransactionDesc. La API devuelve una respuesta con parámetros como MerchantRequestID, CheckoutRequestID, ResponseCode, ResponseDescription y CustomerMessage.
Después de que se procesa la transacción, M-PESA envía un callback con el resultado a la URL de callback especificada. El resultado del callback incluye parámetros como MerchantRequestID, CheckoutRequestID, ResultCode, ResultDesc y CallbackMetadata. El CallbackMetadata contiene detalles de la transacción adicionales como Amount, MpesaReceiptNumber, TransactionDate y PhoneNumber.
También se proporcionan códigos de error para ayudar a diagnosticar y resolver problemas encontrados durante la implementación. Estos códigos de error incluyen timeout de DS, problema con la solicitud de push, error general de solicitud de push, el usuario canceló la solicitud, saldo insuficiente, información del iniciador no válida, transacción expirada y error de bloqueo de suscriptor.
dev.to
M-Pesa Express (STK Push) API Guide
