Skip to main content

Payment Request

The following guideline is to provide explanation on how to apply the corresponding source code in merchant's application to form and send the payment request parameters to PayMaster, for recurring payment.

Step 1 : Library

Merchant shall include PayMaster Merchant Plug-In (MPI) Java library – PayMaster.jar into merchant application.

Step 2 : Import

For recurring payment, merchant shall import below into merchant code:

  • com.PayMaster.Entities.PayMasterEntity
  • com.PayMaster.PropertiesReader.PropertiesReader
  • com.PayMaster.MessageRequestBuilder.PaymentRequestMessageBuilder

Step 3 : Source Code

import com.PayMaster.Entities.PayMasterEntity;
import com.PayMaster.PropertiesReader.PropertiesReader;
import com.PayMaster.MessageRequestBuilder.PaymentRequestMessageBuilder;

.....

//Declare variable for Payment Master Properties - 1st Parameter = File Path , 2nd Parameter = File name
PropertiesReader propertiesReader = new PropertiesReader("./PayMasterProperties/","CCPayment.properties");

//Declare variable for Payment Master Entity
PayMasterEntity paymentRequestEntity = new PayMasterEntity();

//Get all the parameter values from the user side and set into Payment Master Entity
paymentRequestEntity.setter("PaymentID","C04");
paymentRequestEntity.setter("MerchRefNo","merchant-refNo-0001");
paymentRequestEntity.setter("CurrCode","458");
paymentRequestEntity.setter("TxnAmt","1.00");
paymentRequestEntity.setter("ExpTxnAmt","2");
paymentRequestEntity.setter("ECI","12");
paymentRequestEntity.setter("CardNo","8853010000095323");
paymentRequestEntity.setter("TokenFlag","Y");
paymentRequestEntity.setter("POSEnvFlag","R");
paymentRequestEntity.setter("MerchUserID","guest");
paymentRequestEntity.setter("ExpiryYear","20");
paymentRequestEntity.setter("ExpiryMth","12");
paymentRequestEntity.setter("TokenShrtName", "testcard");


//Call Payment Master Payment Request Message Builder to generate the message
PaymentRequestMessageBuilder messageBuilder = new PaymentRequestMessageBuilder();
String paymentMessage = messageBuilder.buildPaymentRequestMessage(paymentRequestEntity, propertiesReader);

//POST request to Payment Master Gateway for recurring
String initialUrl = "https://xxx.finexusgroup.com/upp/faces/ccpayment.xhtml?" + paymentMessage;
HttpURLConnection connection = null;
URL url = new URL(initialUrl);
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
in.close();
String finalUrl = connection.getURL().toString();
.....

Step 4 : Indicate PayMaster Properties File location

Merchant must indicate where the PayMaster Properties File located using PropertiesReader.

Step 5 : Assign value into Payment Request Entity

Merchant to assign value into PayMaster Request Entity. Merchant code must include all the fields as stated in sample code as it’s mandatory.

  • The setter function is used to assign value and the function accepts two parameters – setter(parameter name, parameter value).
info

Refer to Recurring Payment Parameters for fields supported by PayMaster Merchant Plug-In (MPI).

Step 6 : Generate Payment Message

Once all the mandatory values are assigned, merchant call to Payment Request Message Builder to generate the Recurring – paymentMessage.

Step 7 : Send payment message to PayMaster Gateway

The paymentMessage will be used to send to PayMaster Gateway for the recurring payment function.

info

Refer to Payment Response for security control supported by PayMaster Merchant Plug-In (MPI).