Running STK Push test... Environment: live Shortcode: 4088127 Phone: 254722000000 Requesting token from: https://api.safaricom.co.ke/oauth/v1/generate?grant_type=client_credentials Token HTTP Response: 200 Token Response: { "access_token": "zQj2VnKExR31AoGm7AAUWjGyTqBy", "expires_in": "3599" } Access token obtained successfully: zQj2VnKExR... STK Push Request to: https://api.safaricom.co.ke/mpesa/stkpush/v1/processrequest Request data: { "BusinessShortCode": "4088127", "Password": "NDA4ODEyNzk0OGU0YmIxMjcwZWY2M2VkN2M5N2VkZjlmY2Q1OGUxNmRlOTNlM2E2MjQ2MzM5OWFhNTg0OTc5YTZmNjc5YWMyMDI2MTAzMTAyMTcxNw==", "Timestamp": "20261031021717", "TransactionType": "CustomerPayBillOnline", "Amount": 1, "PartyA": "254722000000", "PartyB": "4088127", "PhoneNumber": "254722000000", "CallBackURL": "https:\/\/apis.gnmprimesource.co.ke\/apis\/mpesa-callback.php", "AccountReference": "TestPayment", "TransactionDesc": "Test STK Push" } STK Push HTTP Response: 200 STK Push Raw Response: { "MerchantRequestID":"59e6-4703-84a9-0f793d018fab28403394", "CheckoutRequestID":"ws_CO_31102026051717383722000000", "ResponseCode": "0", "ResponseDescription":"Success. Request accepted for processing", "CustomerMessage":"Success. Request accepted for processing" } STK Push Response: Array ( [MerchantRequestID] => 59e6-4703-84a9-0f793d018fab28403394 [CheckoutRequestID] => ws_CO_31102026051717383722000000 [ResponseCode] => 0 [ResponseDescription] => Success. Request accepted for processing [CustomerMessage] => Success. Request accepted for processing )