Request is initiated from a USSD, Mobile app or any form of web request. All a user is required to do is provide their M-pesa PIN and voila, a C2B mpesa transaction is complete.
First generate your access token.
Set your request headers
Get your test credentials and parameter definitions.
Note: use code provided under Lipa Na Mpesa Online Shortcode for your shortcode.
Make a POST request to:
https://sandbox.safaricom.co.ke/mpesa/stkpush/v1/processrequest
with parameters:
{
"BusinessShortCode": "Shortcode (6 digits)",
"Password": "base64.encode(ShortcodePasskeyTimestamp)",
"Timestamp": "yyyymmddhhiiss",
"TransactionType": "CustomerPayBillOnline",
"Amount": "10",
"PartyA": "MSISDN (12 digits)",
"PartyB": "Shortcode (6 digits)",
"PhoneNumber": "MSISDN (12 digits)",
"CallBackURL": "https://callbackurl",
"AccountReference": "123456",
"TransactionDesc": "Testing"
}
Sample request:
Check your phone asking you to provide M-Pesa PIN to complete transaction: