API References


Introduction

This API reference document contains a brief description of the available API’s with clearly defined input and output parameters on the right side under the title ‘Parameter description’. Request and response bodies are also provided along with each API with sample data for clear understanding.

Card API's

Following card based API’s are available with detailed description and relevant information.

Authorize

This is a request to obtain an authorization for a proposed funds transfer. An authorization is a response from a financial institution indicating that payment information is valid and funds are available in the payer's account.

Request Body

{ "AuthorizeRequest":{ "pp_InstrumentType" "pp_TxnRefNo":"T20170425112425", "pp_Amount":"10000", "pp_TxnCurrency":"PKR", "InstrumentDTO":{ "pp_CustomerCardNumber":"4557012345678902", "pp_CustomerCardExpiry":"1020", "pp_CustomerCardCvv":"101" }, "pp_MerchantID":"Test00127801", "pp_Password":"000000000", "pp_SecureHash":"", "pp_Frequency": "SINGLE" } }

Response Body

{ "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_InstrumentType" Type of instrument used for making payment.
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
    "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
    "pp_CustomerCardNumber" Card number of the customer making the payment.
    "pp_CustomerCardExpiry" Expiry date of the card used for making payment. Format: MMYY (Month Month Year Year).
    "pp_CustomerCardCvv" Card verification value, as printed on the back or front of the card.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
    "pp_Frequency" Indicates the frequency of the transaction offered to the payer. Value could be any one of the following, based on the usage: SINGLE: Indicates a single transaction where a single payment is used to complete the order. RECURRING: Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.
  • expand_moreOutput Parameters
    Parameter Description
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Capture

This is a request to capture funds previously reserved by an authorization. A Capture transaction triggers the movement of funds from the payer's account to the merchant's account.

Request Body

{ "CaptureRequest" : { "pp_TxnRefNo":"T20170425112425", "pp_Amount":"10000", "pp_TxnCurrency":"PKR", "pp_MerchantID":"Test00127801", "pp_Password":"0123456789", "pp_SecureHash":"" } }

Response Body

{ "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
    "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
  • expand_moreOutput Parameters
    Parameter Description
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Void

This is a request to void a previous transaction. A void transaction will reverse a previous transaction.

Request Body

{ "VoidRequest" : { "pp_TxnRefNo":"T20170425112425", "pp_MerchantID":"Test00127801", "pp_Password":"0123456789", "pp_SecureHash":"" } }

Response Body

{ "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
  • expand_moreOutput Parameters
    Parameter Description
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Refund

This is a request to refund previously captured funds to the payer. Typically, a Refund is linked to the Capture or Pay through the txnrefno.

Request Body

{ "RefundRequest" : { "pp_TxnRefNo":"T20170425112424", "pp_Amount":"9999", "pp_TxnCurrency":"PKR", "pp_MerchantID":"Test00127801", "pp_Password":"0123456789", "pp_SecureHash":"" } }

Response Body

{ "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
    "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
  • expand_moreOutput Parameters
    Parameter Description
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Transaction Status Inquiry

This is a request to retrieve the details of an order and all transactions associated with this order.

Request Body

{ "pp_TxnRefNo":"T20170518161115", "pp_MerchantID":"Test00127801", "pp_Password":"0123456789", "pp_SecureHash":"", "pp_Version":"1.1" }

Response Body

{ "status": "", "rrn": "", "settlementDate": "", "settlementExpiryDate": "", "authCode": "", "bankID": "", "productID": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
    "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
  • expand_moreOutput Parameters
    Parameter Description
    "status" Status of the transaction at JazzCash payment gateway.
    "rrn" A unique number generated by the Payment Gateway at the time of transaction processing. The number should be stored and used for future reference. The number is unique for any given date.
    "settlementDate" A date supplied by the Payment Gateway to indicate when this transaction will be settled. When the Payment Gateway closes the batch at the end of the day, the date will roll over to the next processing day’s date. This date will only be provided in case a transaction is already confirmed by the merchant.
    "settlementExpiryDate" A date supplied by the Payment Gateway indicating that if the merchant does not send a confirmation of the transaction by this time, the payment gateway will mark the transaction as expired and the merchant will not be able to resume it. This field will be mandatory where Auth Code is available.
    "authCode" An identifying code issued by the issuing bank to approve or deny the transaction. The field is mandatory in case of successful response code. Refer to Appendix I for a list of response codes and the codes which when sent will require Auth Code.
    "bankID" This field will only be used in case of Direct Debit transaction type, otherwise it should be sent as an empty field. Customer’s bank that authorized the transaction.
    "productID" This field will only be used in case of Direct Debit transaction type. Product ID of bank through which payment has been performed. e.g. Retail, Corporate. Fixed values: ‘RETL’, ‘CORP’. In case value was provided at the time of request, this field will contain the same value. Otherwise, ID of the product chosen by customer at Payment Gateway will be filled.

3D Secure Enrollment

This is a request to check a cardholder's enrollment in the 3DSecure scheme.

Request Body

{ "pp_Version": "1.1", "pp_TxnType": "MPAY", "pp_TxnRefNo": "T20170425112405", "pp_MerchantID": "Test00127801", "pp_Password": "0123456789", "pp_Amount": "20000", "pp_TxnCurrency": "PKR", "pp_TxnDateTime": "20170512101250", "pp_TxnExpiryDateTime": "20170514101250", "pp_BillReference": "billRef", "pp_Description": "Description of transaction", "pp_CustomerCardNumber": "5111111111111118", "pp_CustomerCardExpiry": "0517", "pp_CustomerCardCvv": "100", "pp_SecureHash": "" }

Response Body

{ "result_CardEnrolled": "", "c3dSecureID": "", "aR_Simple_Html": "", "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_TxnType" Type of instrument used for making payment.
    "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
    "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
    "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
    "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
    "pp_BillReference" Bill/invoice Number being settled.
    "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
    "pp_CustomerCardNumber" Card number of the customer making the payment.
    "pp_CustomerCardExpiry" Expiry date of the card used for making payment. Format: MMYY (Month Month Year Year).
    "pp_CustomerCardCvv" Card verification value, as printed on the back or front of the card.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
    "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
  • expand_moreOutput Parameters
    Parameter Description
    "result_CardEnrolled" Card enrolment status of the customer.
    "c3dSecureID" A unique identifier supplied by Jazz Cash to Master Card for authentication.
    "aR_Simple_Html" An HTML form for the card enrolled transaction.
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Process ACS

This request is made to interpret the authentication response returned from the card Issuer's Access Control Server (ACS) after the cardholder completes the authentication process. The response indicates the success or otherwise of the authentication.

Request Body

{ "pp_Version": "1.1", "pp_TxnType": "MPAY", "pp_TxnRefNo": "T20170416122642", "pp_MerchantID": "Test00127801", "pp_Password": "0123456789", "pp_3dSecureID":"159915", "pp_TxnDateTime": "20170425210900", "pp_TxnExpiryDateTime": "20170426210900", "pp_BillReference": "billRef", "pp_Description": "Description of transaction", "paRes":"xxxxx", "pp_SecureHash": "" }

Response Body

{ "c3dSecureID": "", "gateWayCode": "", "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_TxnType" Type of instrument used for making payment.
    "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
    "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
    "pp_BillReference" Bill/invoice Number being settled.
    "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
    "paRes" Base64 encoded string received from the card Issuer's ACS after the cardholder completes the authentication process.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
    "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
  • expand_moreOutput Parameters
    Parameter Description
    "gateWayCode" Approval code returned from Master Card after processing ACS.
    "c3dSecureID" A unique identifier supplied by Jazz Cash to Master Card for authentication.
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Direct Pay

This is a single transaction to authorize payment and transfer funds from payer's account to merchant’s account.

Request Body

{ "pp_Version": "1.1", "pp_TxnType": "MPAY", "pp_TxnRefNo": "T20170518161116", "pp_MerchantID": "Test00127801", "pp_Password": "0123456789", "pp_Amount": "10000", "pp_TxnCurrency": "PKR", "pp_TxnDateTime": "20170518161116", "pp_TxnExpiryDateTime": "20170520161116", "pp_BillReference": "billRef", "pp_Description": "Description of transaction", "pp_CustomerCardNumber": "5123450000000008", "pp_CustomerCardExpiry": "0517", "pp_CustomerCardCvv": "100", "pp_SecureHash": "", "pp_Frequency": "RECURRING" }

Response Body

{ "responseCode": "", "responseMessage": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_TxnType" Type of instrument used for making payment.
    "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
    "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
    "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
    "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
    "pp_BillReference" Bill/invoice Number being settled.
    "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
    "pp_CustomerCardNumber" Card number of the customer making the payment.
    "pp_CustomerCardExpiry" Expiry date of the card used for making payment. Format: MMYY (Month Month Year Year).
    "pp_CustomerCardCvv" Card verification value, as printed on the back or front of the card.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
    "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
    "pp_Frequency" Indicates the frequency of the transaction offered to the payer. Value could be any one of the following, based on the usage: SINGLE: Indicates a single transaction where a single payment is used to complete the order. RECURRING: Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.
  • expand_moreOutput Parameters
    Parameter Description
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

Mobile Account API's

Following API’s are available with detailed description and relevant information for Mobile Account.

REST based Mobile Account API

This is REST based API used for the transaction of Mobile Account as a payment instrument.

Request Body

{ "pp_Version":"1.1", "pp_TxnType":"MWALLET", "pp_Language":"EN", "pp_MerchantID":"Test00127801", "pp_SubMerchantID":"", "pp_Password":"0123456789", "pp_BankID":"", "pp_ProductID":"", "pp_TxnRefNo":"T20170517101549", "pp_Amount":"100", "pp_TxnCurrency":"PKR", "pp_TxnDateTime":"20170517101549", "pp_BillReference":"billRef", "pp_Description":"Description", "pp_TxnExpiryDateTime":"20170824101549", "pp_ReturnURL":"http://localhost/MerchantSimulator/HttpRequestDemoServer/Index", "pp_SecureHash":"", "ppmpf_1":"03122036440", "ppmpf_2":"", "ppmpf_3":"", "ppmpf_4":"", "ppmpf_5":"" }

Response Body

{ "pp_Amount": "", "pp_AuthCode": "", "pp_BankID": "", "pp_BillReference": "", "pp_Language": "", "pp_MerchantID": "", "pp_ResponseCode": "", "pp_ResponseMessage": "", "pp_RetreivalReferenceNo": "", "pp_SubMerchantId": "", "pp_TxnCurrency": "", "pp_TxnDateTime": "", "pp_TxnRefNo": "", "pp_SettlementExpiry": "", "pp_TxnType": "", "pp_Version": "", "ppmbf_1": "", "ppmbf_2": "", "ppmbf_3": "", "ppmbf_4": "", "ppmbf_5": "", "ppmpf_1": "", "ppmpf_2": "", "ppmpf_3": "", "ppmpf_4": "", "ppmpf_5": "", "pp_SecureHash": "" }

Parameter Description

  • expand_moreInput Parameters
    Parameter Description
    "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
    "pp_TxnType" Type of instrument used for making payment.
    "pp_Language" Specifies the language in which to display the page. Fixed value ‘EN’.
    "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
    "pp_SubMerchantID" Unique Id assigned to each sub merchant by the payment gateway.
    "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
    "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
    "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
    "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
    "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
    "pp_BillReference" Bill/invoice Number being settled.
    "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
    "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
    "pp_ReturnURL" The URL where merchant wants the transaction results to be shown. Once the transaction has been processed, response details will be sent over to the merchant on this URL using an HTTP POST Request.
    "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
  • expand_moreOutput Parameters
    Parameter Description
    "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
    "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.
  • SoapAPI Testing
    • SOAP based Mobile Account API

      This is SOAP based API used for the transaction of Mobile Account as a payment instrument.

      Request Body

      <tem:DoPaymentViaAPI> <tem:pp_Version>1.1</tem:pp_Version> <tem:pp_TxnType>MWALLET</tem:pp_TxnType> <tem:pp_Language>EN</tem:pp_Language> <tem:pp_MerchantID>RafayKhan7</tem:pp_MerchantID> <tem:pp_SubMerchantID></tem:pp_SubMerchantID> <tem:pp_Password>0123456789</tem:pp_Password> <tem:pp_BankID></tem:pp_BankID> <tem:pp_ProductID></tem:pp_ProductID> <tem:pp_TxnRefNo>T20171017133843</tem:pp_TxnRefNo> <tem:pp_Amount>100</tem:pp_Amount> <tem:pp_TxnCurrency>PKR</tem:pp_TxnCurrency> <tem:pp_TxnDateTime>20171017133843</tem:pp_TxnDateTime> <tem:pp_BillReference>billRef</tem:pp_BillReference> <tem:pp_Description>Descp</tem:pp_Description> <tem:pp_TxnExpiryDateTime>20171024133843</tem:pp_TxnExpiryDateTime> <tem:pp_ReturnURL>http://localhost/MerchantSimulator/HttpRequestDemoServer/Index</tem:pp_ReturnURL> <tem:pp_SecureHash></tem:pp_SecureHash> <tem:ppmpf_1>03122036440</tem:ppmpf_1> <tem:ppmpf_2></tem:ppmpf_2> <tem:ppmpf_3></tem:ppmpf_3> <tem:ppmpf_4></tem:ppmpf_4> <tem:ppmpf_5></tem:ppmpf_5> </tem:DoPaymentViaAPI>

      Response Body

      <DoPaymentViaAPIResponse xmlns="http://tempuri.org/"> <DoPaymentViaAPIResult> 100|||billRef|||0|EN|RafayKhan7||121|Transaction completed.| 171017007938||||PKR|20171017133843|T20171017133843|OTC|1.1||||||03122036440||||| </DoPaymentViaAPIResult> </DoPaymentViaAPIResponse>

      Parameter Description

      • expand_moreInput Parameters
        Parameter Description
        "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
        "pp_TxnType" Type of instrument used for making payment.
        "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
        "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
        "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
        "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
        "pp_BillReference" Bill/invoice Number being settled.
        "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
        "pp_CustomerCardNumber" Card number of the customer making the payment.
        "pp_CustomerCardExpiry" Expiry date of the card used for making payment. Format: MMYY (Month Month Year Year).
        "pp_CustomerCardCvv" Card verification value, as printed on the back or front of the card.
        "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
        "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
        "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
        "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
        "pp_Frequency" Indicates the frequency of the transaction offered to the payer. Value could be any one of the following, based on the usage: SINGLE: Indicates a single transaction where a single payment is used to complete the order. RECURRING: Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.
      • expand_moreOutput Parameters
        Parameter Description
        "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
        "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

      Voucher Payment API's

      Following API’s are available with detailed description and relevant information for Voucher Payment.

      REST based Voucher API

      This is REST based API used for the transaction of Voucher as payment instrument.

      Request Body

      { "pp_Version":"1.1", "pp_TxnType":"OTC", "pp_Language":"EN", "pp_MerchantID":"Test00127801", "pp_SubMerchantID":"", "pp_Password":"0123456789", "pp_BankID":"", "pp_ProductID":"", "pp_TxnRefNo":"T20170517101549", "pp_Amount":"100", "pp_TxnCurrency":"PKR", "pp_TxnDateTime":"20170517101549", "pp_BillReference":"billRef", "pp_Description":"Description", "pp_TxnExpiryDateTime":"20170824101549", "pp_ReturnURL":"http://localhost/MerchantSimulator/HttpRequestDemoServer/Index", "pp_SecureHash":"", "ppmpf_1":"03122036440", "ppmpf_2":"", "ppmpf_3":"", "ppmpf_4":"", "ppmpf_5":"" }

      Response Body

      { "pp_Amount": "", "pp_AuthCode": "", "pp_BankID": "", "pp_BillReference": "", "pp_Language": "", "pp_MerchantID": "", "pp_ResponseCode": "", "pp_ResponseMessage": "", "pp_RetreivalReferenceNo": "", "pp_SubMerchantId": "", "pp_TxnCurrency": "", "pp_TxnDateTime": "", "pp_TxnRefNo": "", "pp_SettlementExpiry": "", "pp_TxnType": "", "pp_Version": "", "ppmbf_1": "", "ppmbf_2": "", "ppmbf_3": "", "ppmbf_4": "", "ppmbf_5": "", "ppmpf_1": "", "ppmpf_2": "", "ppmpf_3": "", "ppmpf_4": "", "ppmpf_5": "", "pp_SecureHash": "" }

      Parameter Description

      • expand_moreInput Parameters
        Parameter Description
        "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
        "pp_TxnType" Type of instrument used for making payment.
        "pp_Language" Specifies the language in which to display the page. Fixed value ‘EN’.
        "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
        "pp_SubMerchantID" Unique Id assigned to each sub merchant by the payment gateway.
        "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
        "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
        "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
        "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
        "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
        "pp_BillReference" Bill/invoice Number being settled.
        "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
        "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
        "pp_ReturnURL" The URL where merchant wants the transaction results to be shown. Once the transaction has been processed, response details will be sent over to the merchant on this URL using an HTTP POST Request.
        "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
      • expand_moreOutput Parameters
        Parameter Description
        "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
        "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.

      SOAP based Voucher API

      This is soap based API used for the transaction of Voucher as payment instrument.

      Request Body

      <tem:DoPaymentViaAPI> <tem:pp_Version>1.1</tem:pp_Version> <tem:pp_TxnType>OTC</tem:pp_TxnType> <tem:pp_Language>EN</tem:pp_Language> <tem:pp_MerchantID>RafayKhan7</tem:pp_MerchantID> <tem:pp_SubMerchantID></tem:pp_SubMerchantID> <tem:pp_Password>0123456789</tem:pp_Password> <tem:pp_BankID></tem:pp_BankID> <tem:pp_ProductID></tem:pp_ProductID> <tem:pp_TxnRefNo>T20171017133843</tem:pp_TxnRefNo> <tem:pp_Amount>100</tem:pp_Amount> <tem:pp_TxnCurrency>PKR</tem:pp_TxnCurrency> <tem:pp_TxnDateTime>20171017133843</tem:pp_TxnDateTime> <tem:pp_BillReference>billRef</tem:pp_BillReference> <tem:pp_Description>Descp</tem:pp_Description> <tem:pp_TxnExpiryDateTime>20171024133843</tem:pp_TxnExpiryDateTime> <tem:pp_ReturnURL>http://localhost/MerchantSimulator/HttpRequestDemoServer/Index</tem:pp_ReturnURL> <tem:pp_SecureHash></tem:pp_SecureHash> <tem:ppmpf_1>03122036440</tem:ppmpf_1> <tem:ppmpf_2></tem:ppmpf_2> <tem:ppmpf_3></tem:ppmpf_3> <tem:ppmpf_4></tem:ppmpf_4> <tem:ppmpf_5></tem:ppmpf_5> </tem:DoPaymentViaAPI>

      Response Body

      <DoPaymentViaAPIResponse xmlns="http://tempuri.org/"> <DoPaymentViaAPIResult> 100|||billRef|||0|EN|RafayKhan7||124|Order is placed and waiting for financials to be received over the counter.|171017007938||||PKR|20171017133843|T20171017133843|OTC| 1.1||||||03122036440||||| </DoPaymentViaAPIResult> </DoPaymentViaAPIResponse>

      Parameter Description

      • expand_moreInput Parameters
        Parameter Description
        "pp_TxnRefNo" A unique value created by the merchant to identify the transaction.
        "pp_TxnType" Type of instrument used for making payment.
        "pp_Amount" The transaction amount. Please note that no decimal places are included. Decimal place will be assumed at the default position of the currency provided.
        "pp_TxnCurrency" Currency of transaction amount. It has a fixed value ‘PKR’.
        "pp_TxnDateTime" Merchant provided date and time of transaction. The format of date time should be yyyyMMddHHmmss.
        "pp_TxnExpiryDateTime" Transaction Expiry can be specified by merchant to indicate to the issuing bank that the transaction must be approved within this period. Please note that the default and maximum value of this expiry is 3 months.
        "pp_BillReference" Bill/invoice Number being settled.
        "pp_Description" Transaction details to be shown on screen as desired by the merchant. This field will be parsed to identify any malicious data entered by the end user. In cases when any of these characters <>\*=%/:'|"{} are inserted, they will be replaced with a space.
        "pp_CustomerCardNumber" Card number of the customer making the payment.
        "pp_CustomerCardExpiry" Expiry date of the card used for making payment. Format: MMYY (Month Month Year Year).
        "pp_CustomerCardCvv" Card verification value, as printed on the back or front of the card.
        "pp_MerchantID" Unique Id assigned to each merchant by the payment gateway.
        "pp_Password" Assigned to each merchant, used for authentication of the merchant at the time of payment. Password is a system generated value.
        "pp_SecureHash" Used to allow the Payment Gateway to check the integrity of the transaction request.
        "pp_Version" Payment Portal Version. Fixed value ‘1.1’ should be used.
        "pp_Frequency" Indicates the frequency of the transaction offered to the payer. Value could be any one of the following, based on the usage: SINGLE: Indicates a single transaction where a single payment is used to complete the order. RECURRING: Indicates a recurring transaction where the payer authorizes you to automatically debit their accounts for bill or invoice payments.
      • expand_moreOutput Parameters
        Parameter Description
        "responseCode" Response code representing the transaction success or failure. A response code of 000 represents success.
        "responseMessage" Error details in case the transaction failed to be processed. This field will be mandatory for all cases where response code is not equal to 000.