完成响应
以下指南说明如何使用源代码从 PayMaster 返回的响应消息中检索支付完成响应参数。
- Java
- .Net
- PHP
- Python
- Node.js
第 1 步:图书馆
商户必须在商户应用程序中包含 PayMaster 商户插件 (MPI) Java 库 PayMaster.jar。
第 2 步:导入
对于 UPP 付款,商家应将以下内容导入其代码中:
com.PayMaster.Entities.PayMasterEntitycom.PayMaster.PropertiesReader.PropertiesReadercom.PayMaster.MessageResponseBuilder.PaymentResponseMessageBuilder
第 3 步:源代码
import com.PayMaster.Entities.PayMasterEntity;
import com.PayMaster.PropertiesReader.PropertiesReader;
import com.PayMaster.MessageResponseBuilder.PaymentResponseMessageBuilder;
// Declare variable for PayMaster Properties - 1st Parameter = File Path, 2nd Parameter = File Name
PropertiesReader propertiesReader = new PropertiesReader("./PayMasterProperties/", "CCPayment.properties");
// Declare variable for PayMaster Entity
PayMasterEntity paymentResponseEntity = new PayMasterEntity();
// Get response message from PayMaster and set it into the PayMaster Entity
paymentResponseEntity.setter("ResponseMessage", responseMessage);
// Call Payment Response Message Builder to set the value
PaymentResponseMessageBuilder paymentResponseMessageBuilder = new PaymentResponseMessageBuilder();
paymentResponseMessageBuilder.buildCardPaymentResponseMessage(paymentResponseEntity, propertiesReader);
if (paymentResponseEntity.getter("TxnStatDetCde").equals("0000")) {
String merchantID = paymentResponseEntity.getter("MerchantID");
String merchRefNo = paymentResponseEntity.getter("MerchRefNo");
String txnStatus = paymentResponseEntity.getter("TxnStatus");
String shAlgorithmType = paymentResponseEntity.getter("SHAlgorithmType");
String shValue = paymentResponseEntity.getter("SHValue");
// TODO: Add additional processing here
}
第 4 步:指示 PayMaster 属性文件位置
商家必须使用PropertiesReader指定 PayMaster 属性文件的位置。
第 5 步:使用 Setter 指示 PayMaster 属性文件位置
商户必须使用 setter 方法 setter(“ResponseMessage”,”<PayMaster 网关返回的响应消息>”) 设置 PayMaster 属性文件的位置。
第 6 步: 为 PayMaster 响应实体分配值
商户应调用 UPP 支付响应消息生成器来处理响应消息并将值分配给 PayMaster 响应实体。
PayMaster商户插件(MPI)支持的字段请参考 预授权 完成参数。
第 7 步: 从 PayMaster 响应实体检索值
商家可以从 PayMaster 响应实体检索值。 使用 getter 函数检索值;该函数只接受一个参数:getter(参数名称)。
确保 TxnStatDetCde 的值不等于 5015,因为这表示无效的安全哈希值。
第 1 步:图书馆
商户必须在商户应用程序中包含 PayMaster 商户插件 (MPI) .NET 库 PayMaster.dll。
第 2 步:命名空间
对于 UPP 支付,商户应在商户代码中包含以下命名空间:
using com.PayMaster.Entitiesusing com.PayMaster.Propertiesusing com.PayMaster.MessageResponseBuilder
第 3 步:源代码
using com.PayMaster.Entities;
using com.PayMaster.Properties;
using com.PayMaster.MessageResponseBuilder;
// Declare variable for PayMaster Properties - 1st Parameter = File Path, 2nd Parameter = File Name
PropertiesReader propertiesReader = new PropertiesReader("./PayMasterProperties/", "CCPayment.properties");
// Declare variable for PayMaster Entity
PayMasterEntity ccPaymentResponseEntity = new PayMasterEntity();
// Get response message from PayMaster and set it into the PayMaster Entity
ccPaymentResponseEntity.setter("ResponseMessage", responseMessage);
// Call Payment Response Message Builder to set the value
PaymentResponseMessageBuilder cardPaymentResponseMessageBuilder = new PaymentResponseMessageBuilder();
cardPaymentResponseMessageBuilder.buildCardPaymentResponseMessage(ccPaymentResponseEntity, propertiesReader);
if (ccPaymentResponseEntity.getter("TxnStatDetCde").Equals("0000")) {
string merchantID = ccPaymentResponseEntity.getter("MerchantID");
string merchRefNo = ccPaymentResponseEntity.getter("MerchRefNo");
string txnStatus = ccPaymentResponseEntity.getter("TxnStatus");
string shAlgorithmType = ccPaymentResponseEntity.getter("SHAlgorithmType");
string shValue = ccPaymentResponseEntity.getter("SHValue");
// TODO: Add additional processing here
}
第 4 步:指示 PayMaster 属性文件位置
商家必须使用PropertiesReader指定 PayMaster 属性文件的位置。
第 5 步:将响应消息分配给支付响应实体
商户应使用 setter(“ResponseMessage”,”<PayMaster 网关返回的响应消息>”)将从 PayMaster 收到的响应消息分配给 PayMaster 响应实体。
第 6 步: 将值分配给 PayMaster 响应实体
商户应调用 UPP 支付响应消息生成器来处理响应消息并将值分配给 PayMaster 响应实体。
PayMaster商户插件(MPI)支持的字段请参考 预授权完成参数。
第 7 步: 从 PayMaster 响应实体检索值
商家可以从 PayMaster 响应实体检索值。 getter 函数用于检索值,并且仅接受一个参数:getter(参数名称)。
确保 TxnStatDetCde 的值不等于 5015,因为这表示无效的安全哈希值。
第 1 步:图书馆