Payment Request
The following guideline is to explain how to apply the corresponding source codes to form the mandatory payment request parameters in the redirect link and send to PayMaster for payment request processing.
- Java
- .Net
- PHP
- Python
- Node.js
Step 1 : Library
Merchant shall include PayMaster Merchant Plug-In (MPI) Java library – PayMaster.jar into merchant application.
Step 2 : Import
For UPP 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.PropertiseReader;
import com.PayMaster.MessageRequestBuilder.PaymentRequestMessageBuilder;
.....
//Declare variable for Payment Master Properties - 1st Parameter = File Path , 2nd Parameter = File name
PropertiesReader propertiesReader = new PropertiesReader("./PayMasterProperties/","UPPPayment.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("PaymentID", "U01");
paymentRequestEntity("MerchRefNo", "merchant-refNo-0001");
paymentRequestEntity("CurrCode", "458");
paymentRequestEntity("TxnAmt", "1.00");
paymentRequestEntity("ExpTxnAmt", "2");
paymentRequestEntity.setter("CountryCode", "MY");
paymentRequestEntity.setter("MerchUserID", "guest-finexus");
paymentRequestEntity.setter("TokenFlag", "Y");
paymentRequestEntity.setter("PreAuthFlag", "Y");
//Call Payment Master Payment Request Message Builder to generate the message
PaymentRequestMessageBuilder messageBuilder = new PaymentRequestMessageBuilder();
string paymentMessage = messageBuilder.buildPaymentRequestMessage(paymentRequestEntity, propertiesReader);
//Redirect the message generated to Payment Master Gateway for settlement
res.sendRedirect("https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?" + paymentMessage);
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)
.
Refer to Pre-Auth Payment Parameters for fields supported by PayMaster Merchant Plug-In (MPI).
Step 6 : Generate UPP Payment
Once all the mandatory values are assigned, merchant call to Payment Request Message Builder to generate the UPP Payment – paymentMessage
.
Step 7 : Send payment message to PayMaster Gateway
The paymentMessage
will be used to send to PayMaster Gateway for the UPP Payment.
Refer to Pre-Auth Payment Response for security control supported by PayMaster Merchant Plug-In (MPI).
Step 1 : Library
Merchant shall include PayMaster Merchant Plug-In (MPI) .Net library – PayMaster.dll into merchant application.
Step 2 : Namespace
For UPP Payment, merchant shall use the namespace below in the merchant code:
using com.PayMaster.Entities
using com.PayMaster.Properties
using com.PayMaster.MessageRequestBuilder
Step 3 : Source Code
using com.PayMaster.Entities;
using com.PayMaster.Properties;
using com.PayMaster.MessageRequestBuilder;
.....
//Declare variable for Payment Master Properties - 1st Parameter = File Path , 2nd Parameter = File name
PropertiesReader propertiesReader = new PropertiesReader("./PayMasterProperties/","UPPPayment.properties");
//Declare variable for Payment Master Entity
PayMasterEntity uppPaymentRequestEntity = new PayMasterEntity();
//Get all the parameter values from the user side and set into Payment Master Entity
uppPaymentRequestEntity.setter("PaymentID", "U01");
uppPaymentRequestEntity.setter("EcommMerchInd", "2");
uppPaymentRequestEntity.setter("MerchRefNo", "merchant-refNo-0001");
uppPaymentRequestEntity.setter("CountryCode", "MY");
uppPaymentRequestEntity.setter("CurrCode", "458");
uppPaymentRequestEntity.setter("TxnAmt", "1.00");
uppPaymentRequestEntity.setter("ExpTxnAmt", "2");
uppPaymentRequestEntity.setter("TokenFlag", "Y");
uppPaymentRequestEntity.setter("MerchUserID", "User ID");
uppPaymentRequestEntity.setter("PreAuthFlag", "Y");
//Call Payment Master Payment Request Message Builder to generate the message
PaymentRequestMessageBuilder uppMessageBuilder = new PaymentRequestMessageBuilder();
string uppPaymentMessage = uppMessageBuilder.buildPaymentRequestMessage(uppPaymentRequestEntity, propertiesReader);
//Redirect the message generated to Payment Master Gateway for settlement
Response.Redirect("https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?" + uppPaymentMessage);
.....
Step 4 : Indicate PayMaster Properties File location
The merchant must indicate where the PayMaster Properties File is located using the PropertiesReader
.
Step 5 : Assign value into Payment Request Entity
The merchant has to assign value into the 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)
.
Refer to Pre-Auth Payment Parameters for fields supported by PayMaster Merchant Plug-In (MPI).
Step 6 : Generate UPP Payment
Once all the mandatory values are assigned, merchant call to Payment Request Message Builder to generate the UPP Payment – uppPaymentMessage
.
Step 7 : Send payment message to PayMaster Gateway
The uppPaymentMessage
will be used to send to PayMaster Gateway for the UPPPayment.
Refer to Pre-Auth Payment Response for security control supported by PayMaster Merchant Plug-In (MPI).
Step 1 : Library
Merchant shall include PayMaster Merchant Plug-In (MPI) PHP library – PayMaster.phar into merchant application.
Step 2 : Import
For UPP payment, merchant shall import below into merchant code:
PropertiesReader
- to read the properties files.PayMasterEntity
– to assign all the acceptable values for PayMaster UPP payment.PaymentRequestMessageBuilder
– to generate PayMaster UPP payment request message.
Step 3 : Source Code
<?php
use com\PayMaster\Entities\PayMasterEntity;
use com\PayMaster\PropertiesReader\PropertiesReader;
use com\PayMaster\MessageRequestBuilder\PaymentRequestMessageBuilder;
use com\PayMaster\Import\ImportFile;
//Merchant to locate the absolute path of PayMaster.phar
$basePath = 'phar://<absolute path of PayMaster.phar>/';
include_once = $basePath.'com/PayMaster/Import/ImportFile.php';
$import = new ImportFile();
$import->includeFile($basePath);
.....
//Declare variable for Payment Master Properties - 1st Parameter = File Path , 2nd Parameter = File name
$propertiesReader = new PropertiesReader();
//Path to the root project folder
$propertiesReader->PropertiesReader(<absolute path>,"UPPPayment.ini");
//Declare variable for Payment Master Entity
$paymentRequestEntity = new PayMasterEntity();
//Get all the parameter values from the user side and set into Payment Master Entity
$paymentRequestEntity->setter("PaymentID", "U01");
$paymentRequestEntity->setter("MerchRefNo", "merchant-refNo-0001");
$paymentRequestEntity->setter("CurrCode", "458");
$paymentRequestEntity->setter("TxnAmt", "1.00");
$paymentRequestEntity->setter("ExpTxnAmt", "2");
$paymentRequestEntity->setter("EcommMerchInd", "1");
$paymentRequestEntity->setter("CountryCode", "MY");
$paymentRequestEntity->setter("TokenFlag", "Y");
$paymentRequestEntity->setter("PreAuthFlag", "Y");
$paymentRequestEntity->setter("MerchUserID", "User ID");
//Call Payment Master Payment Request Message Builder to generate the message
$paymentRequestMessageBuilder = new PaymentRequestMessageBuilder();
$paymentMessage = $paymentRequestMessageBuilder->buildPaymentRequestMessage($paymentRequestEntity, $propertiesReader);
//Redirect the message generated to Payment Master Gateway for settlement
header("Location:https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?" . $paymentMessage);
exit();
.....
Step 4 : Locate absolute path of PayMaster.phar
Merchant to locate the absolute path of PayMaster.phar as the basePath
in Merchant source code (line 7 in the example above).
Example:$basePath='phar://<absolute path of PayMaster.phar>/'
Step 5 : Indicate PayMaster Properties File location
The merchant must indicate where the PayMaster Properties File is located using the PropertiesReader
.
Step 6 : Assign value into Payment Request Entity
The merchant has to assign value into the 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)
.
Refer to Pre-Auth Payment Parameters for fields supported by PayMaster Merchant Plug-In (MPI).
Step 7 : Generate UPP Payment
Once all the mandatory values are assigned, merchant call to Payment Request Message Builder to generate the UPP Payment – paymentMessage
.
Step 8 : Send payment message to PayMaster Gateway
The paymentMessage
will be used to send to PayMaster Gateway for the UPP Payment.
Refer to Pre-Auth Payment Response for security control supported by PayMaster Merchant Plug-In (MPI).
Step 1 : Packages
Merchant shall setup and include PayMaster Merchant Plug-In (MPI) Python packages into merchant application.
Step 2 : Import
For UPP payment, merchant shall include below into merchant code:
PropertiesReader
– to read the properties files.PayMasterEntity
– to assign all the acceptable values for PayMaster UPP payment.PaymentRequestMessageBuilder
- to generate PayMaster UPP payment request message.
Step 3 : Source Code
from com.PayMaster.Entities.PayMasterEntity import PayMasterEntity
from com.PayMaster.PropertiesReader.PropertiseReader import PropertiseReader
from com.PayMaster.MessageRequestBuilder.PaymentRequestMessageBuilder import PaymentRequestMessageBuilder
##Declare variable for Payment Master Properties - 1st Parameter = File Path , 2nd Parameter = File name
PropertiesReader propertiesReader = new PropertiesReader("UPPPayment.properties","PayMasterProperties/")
##Declare variable for Payment Master Entity
uppPaymentRequestEntity = PayMasterEntity()
##Get all the parameter values from the user side and set into Payment Master Entity
uppPaymentRequestEntity.setter("PaymentID", "U01")
uppPaymentRequestEntity.setter("EcommMerchInd", "2")
uppPaymentRequestEntity.setter("MerchRefNo", "merchant-refNo-0001")
uppPaymentRequestEntity.setter("CountryCode", "MY")
uppPaymentRequestEntity.setter("CurrCode", "458")
uppPaymentRequestEntity.setter("TxnAmt", "1.00")
uppPaymentRequestEntity.setter("ExpTxnAmt", "2")
uppPaymentRequestEntity.setter("TokenFlag", "Y")
uppPaymentRequestEntity.setter("MerchUserID", "User ID")
uppPaymentRequestEntity.setter("PreAuthFlag", "Y")
##Call Payment Master Payment Request Message Builder to generate the message
uppMessageBuilder = PaymentRequestMessageBuilder()
uppPaymentMessage = uppMessageBuilder.buildPaymentRequestMessage(uppPaymentRequestEntity, propertiesReader)
redirect("https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?" + uppPaymentMessage)
Step 4 : Indicate PayMaster Properties File location
The merchant must indicate where the PayMaster Properties File is located using the PropertiesReader
.
Step 5 : Assign value into Payment Request Entity
The merchant has to assign value into the 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)
.
Refer to Pre-Auth Payment Parameters for fields supported by PayMaster Merchant Plug-In (MPI).
Step 6 : Generate UPP Payment
Once all the mandatory values are assigned, merchant call to Payment Request Message Builder to generate the UPP Payment – uppPaymentMessage
.
Step 7 : Send payment message to PayMaster Gateway
The uppPaymentMessage
will be used to send to PayMaster Gateway for the UPP Payment.
Refer to Pre-Auth Payment Response for security control supported by PayMaster Merchant Plug-In (MPI).
Step 1 : Library
Merchant shall setup and include PayMaster Merchant Plug-In (MPI) NodeJS library into merchant application.
Step 2 : Source Code
var paymaster = require('./js/PayMaster.min.js');
module.exports = function (app) {
app.post('/UPPPayment', (req, res)=>{
.....
paymaster.PropertiesReader('./properties/','UPPPayment.properties');
paymaster.setter('PaymentID', 'U01');
paymaster.setter('EcommMerchInd', '2');
paymaster.setter('MerchRefNo', 'merchant-refNo-0001');
paymaster.setter('CountryCode', 'MY');
paymaster.setter('CurrCode', '458');
paymaster.setter('ExpTxnAmt', '2');
paymaster.setter('TxnAmt', '1.00');
paymaster.setter('TokenFlag', 'Y');
paymaster.setter('MerchUserID', 'UserName');
paymaster.setter('PreAuthFlag', 'Y');
payment.MERCH_UPPPaymentRequest(paymaster.PaymentRequestEntity, paymaster.propDetails, function(err, response, result){
if(err){
throw err;
}
if(response){
res.redirect("https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?" + result);
}
});
});
}
Step 3 : Indicate PayMaster Properties File location
The merchant must indicate where the PayMaster Properties File is located using the PropertiesReader
.
Step 4 : Assign value into Payment Request Entity
The merchant has to assign value into the 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)
.
Refer to Pre-Auth Payment Parameters for fields supported by PayMaster Merchant Plug-In (MPI).
Step 5 : Generate request message
MERCH_UPPPaymentRequest()
function to generate the payment request message.
Step 6 : Send payment message to PayMaster
The payment message returned by the JavaScript will be used to send to PayMaster for the UPP payment.
Refer to Pre-Auth Payment Response for security control supported by PayMaster Merchant Plug-In (MPI).