I am testing the JazzCash sandbox environment for processing payments in my Laravel application, but I am encountering an issue. The transaction fails, returning the response code 199 with the message:
Sorry! Your transaction was not successful. Please try again later.
Below is the JSON request being sent to the JazzCash server:
{
"pp_Version": "1.1",
"pp_TxnType": "MWALLET",
"pp_Language": "EN",
"pp_MerchantID": "my_marchant_id",
"pp_SubMerchantID": null,
"pp_UsageMode": "PR",
"pp_Password": "my_password",
"pp_BankID": "",
"pp_ProductID": "",
"pp_TxnRefNo": "T17355384763161",
"pp_Amount": "30000",
"pp_DiscountedAmount": "",
"pp_TxnCurrency": "PKR",
"pp_TxnDateTime": "20241230060116",
"pp_BillReference": "bill1234",
"pp_Description": "Description of transaction",
"pp_TxnExpiryDateTime": "20250228060116",
"pp_ReturnURL": "https://ethical-emu-helpful.ngrok-free.app/payment/response",
"pp_SecureHash": "524B68C6CA8E0974D1278CBE18F29F4C0DFD00B62548A7D1FE4F1379629654A0",
"ppmpf_1": "Ejaz Hussain",
"ppmpf_2": "[email protected]",
"ppmpf_3": "2",
"ppmpf_4": "",
"ppmpf_5": "",
"pp_MobileNumber": "03123456789",
"DiscountProfileId": null,
"ppTxnOrderIdentifier": null,
"pp_PaymentInstrumentNumber": "03123456789",
"pp_PaymentInstrumentID": "0"
}
Here is the JSON response received:
{
"pp_Amount": "30000",
"pp_AuthCode": "",
"pp_BankID": "",
"pp_BillReference": "bill1234",
"pp_Language": "EN",
"pp_MerchantID": "my_marchant_id",
"pp_ResponseCode": "199",
"pp_ResponseMessage": "Sorry! Your transaction was not successful. Please try again later.",
"pp_RetreivalReferenceNo": "241230819056",
"pp_SecureHash": "8710B300223B52F0EF2659418AECBD143F08799B9C2A5C581F6DB0D508A330A8",
"pp_SettlementExpiry": "",
"pp_SubMerchantId": "",
"pp_TxnCurrency": "PKR",
"pp_TxnDateTime": "20241230060116",
"pp_TxnRefNo": "T17355384763161",
"pp_TxnType": "MWALLET",
"pp_Version": "1.1",
"ppmpf_1": "Ejaz Hussain",
"ppmpf_2": "[email protected]",
"ppmpf_3": "2",
"ppmpf_4": "",
"ppmpf_5": ""
}
What I’ve tried:
- Verified that all required fields are correctly formatted and filled.
- Ensured that the pp_SecureHash is generated using the correct algorithm and matches the expected format.
- Confirmed that the sandbox credentials provided by JazzCash are correct.
- Checked the pp_ReturnURL to make sure it is accessible (using Ngrok).
Questions:
-
What does the response code 199 signify in the JazzCash sandbox environment?
-
Could there be an issue with my sandbox credentials or environment setup?
-
How can I resolve this to successfully test the transaction in the sandbox?