跳到主要内容

付款请求

通过 银行列表 获取银行列表后,在付款请求中使用返回的 FICodeAcqBank 值来处理付款。

第 1 步:图书馆

商户必须在商户应用程序中包含 PayMaster 商户插件 (MPI) Java 库 PayMaster.jar

第 2 步:导入

对于付款,商户应将以下内容导入到其代码中:

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

第 3 步:源代码

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

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

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

// Get all the parameter values from the user side and set into PayMaster Entity
paymentRequestEntity.setter("MerchantID", "000010000099939");
paymentRequestEntity.setter("MerchRefNo", "MYB2023030315435025LL");
paymentRequestEntity.setter("PaymentID", "D01");
paymentRequestEntity.setter("TxnAmt", "1.00");
paymentRequestEntity.setter("ExpTxnAmt", "2");
paymentRequestEntity.setter("CurrCode", "458");
paymentRequestEntity.setter("CountryCode", "MY");
paymentRequestEntity.setter("EcommMerchInd", "2");
paymentRequestEntity.setter("TerminalID", "10002303");

// Get the FICode and AcqBank from the BankListing
paymentRequestEntity.setter("FICode", "RPP");
paymentRequestEntity.setter("AcqBank", "FNXSMYNB");

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

// Redirect the message generated for settlement
response.sendRedirect(<Your_Payment_Screen_URL> + paymentMessage);

第 4 步:指示 PayMaster 属性文件位置

商户必须使用 PropertiesReader 指定 PayMaster 属性文件的位置。

第 5 步:为付款请求实体分配值

商户必须使用 setter 函数为 PayMaster 请求实体分配值:setter(参数名,参数值)

从银行列表响应中获取 FICodeAcqBank。请参阅 付款参数了解 PayMaster 商户插件 (MPI) 支持的字段。

第 6 步:生成付款消息

分配所有必填值后,调用 PaymentRequestMessageBuilder 以生成付款消息(paymentMessage)。

第 7 步:将付款消息发送至 PayMaster 网关

paymentMessage 将被发送到 PayMaster 网关进行结算。

请参阅 付款响应了解 PayMaster 商户插件 (MPI) 支持的安全控制。