银行列表请求
这是一个指南,指导商户在其网站中应用源代码以检索“银行列表”,用于形成支付请求参数,这些参数将被发送到 PayMaster 进行银行列表处理。
- Java
- .Net
- PHP
- Python
- Node.js
步骤 1:库
商家应将 PayMaster 商户插件(MPI)Java 库 — PayMaster.jar,包含到商家应用程序中。
步骤 2:导入
商家应将以下内容导入商家代码:
com.PayMaster.Entities.PayMasterEntity
com.PayMaster.PropertiesReader.PropertiesReader
com.PayMaster.MessageRequestBuilder.PaymentRequestMessageBuilder
步骤 3:源代码
商家必须将银行列表放置在支付请求的AcqBank
字段中。
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/","BankListing.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", "B01");
paymentRequestEntity("CurrCode", "458");
paymentRequestEntity("CountryCode", "MY");
paymentRequestEntity("FICode", "RPP");
//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 bank listing
String initialUrl = "https://xxx.finexusgroup.com/upp/faces/banklisting.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()));
String inputLine;
StringBuilder response = new StringBuilder();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
.....
步骤 4:指明 PayMaster 属性文件位置
商家必须使用 PropertiesReader
指明 PayMaster 属性文件的位置。
步骤 5:为支付请求实体分配值
商家需为 PayMaster 请求实体分配值。商家代码必须包含所有示例代码中提到的字段,因为这是强制要求的。
- Setter 函数用于分配值,该函数接受两个参数:
setter(参数名, 参数值)
。
请参阅银行列表参数,了解 PayMaster 商户插件(MPI)支持的字段。
步骤 6:生成银行列表
当分配了所有必要值后,商家需调用支付请求消息生成器来生成银行列表 - paymentMessage
。
步骤 7:发送支付消息至 PayMaster 网关
paymentMessage
将被发送至 PayMaster 网关以获取银行列表。
步骤 1:库
商家应将 PayMaster 商户插件(MPI).Net 库 PayMaster.dll 添加到商家应用程序中。
步骤 2:命名空间
商家应在商家代码中使用以下命名空间:
using com.PayMaster.Entities
using com.PayMaster.Properties
using com.PayMaster.MessageRequestBuilder
步骤 3:源代码
商家必须在支付请求的 AcqBank
字段中提供银行列表。
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/","BankListing.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", "B01");
paymentRequestEntity.setter("CountryCode", "MY");
paymentRequestEntity.setter("CurrCode", "458");
paymentRequestEntity.setter("FICode", "RPP");
//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 bank listing
string initialUrl = "https://xxx.finexusgroup.com/upp/faces/banklisting.xhtml?" + paymentMessage;
HttpClient httpClient = new HttpClient();
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, initialUrl );
HttpResponseMessage response = await httpClient.SendAsync(request);
.....
步骤 4:指明 PayMaster 属性文件位置
商家必须使用 PropertiesReader
指明 PayMaster 属性文件的位置。
步骤 5:分配值给支付请求实体
商家必须为 PayMaster 请求实体分配值。商家的代码必须包含示例代码中规定的所有字段,因为这是强制性的。
- 使用设置器函数进行数值分配,该函数接受两个参数 –
setter(参数名称, 参数值)
。
请参阅银行列表参数,了解 PayMaster 商家插件(MPI)支持的字段。
步骤 6:生成银行列表
一旦分配了所有必需的值,商家将调用支付请求消息生成器来生成银行列表 – paymentMessage
。
步骤 7:发送支付消息至 PayMaster 网关
paymentMessage
将被发送至 PayMaster 网关以获取银行列表。
步骤 1:库
商家应将 PayMaster 商家插件(MPI)PHP 库 PayMaster.phar 包含到商家应用程序中。
步骤 2:导入
商家应将以下内容导入到商家代码中:
PropertiesReader
- 用于读取属性文件。PayMasterEntity
– 用于为 PayMaster UPP 支付分配所有可接受的值。PaymentRequestMessageBuilder
– 用于生成 PayMaster UPP 支付请求消息。
步骤 3:源代码
商家必须将银行列表放置在支付请求的 AcqBank
字段中。
<?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>,"BankListing.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", "B01");
$paymentRequestEntity->setter("CurrCode", "458");
$paymentRequestEntity->setter("CountryCode", "MY");
$paymentRequestEntity->setter("FICode", "RPP");
//Call Payment Master Payment Request Message Builder to generate the message
$paymentRequestMessageBuilder = new PaymentRequestMessageBuilder();
$paymentMessage = $paymentRequestMessageBuilder->buildPaymentRequestMessage($paymentRequestEntity, $propertiesReader);
//POST request to Payment Master Gateway for bank listing
$initialUrl = "https://xxx.finexusgroup.com/upp/faces/banklisting.xhtml?" . $paymentMessage;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $initialUrl);
curl_setopt($ch, CURLOPT_POST, 1);
$response = curl_exec($ch);
curl_close($ch);
exit();
.....
步骤 4:定位 PayMaster.phar 的绝对路径
商家需在商家源代码中定位 PayMaster.phar 的绝对路径,作为 basePath
(示例中的第7行)。
示例:$basePath='phar://<PayMaster.phar 的绝对路径>/'
步骤 5:指示 PayMaster 属性文件位置
商家必须使用 PropertiesReader
指明 PayMaster 属性文件的位置。
步骤 6:分配值给支付请求实体
商家必须为 PayMaster 请求实体分配值。商家的代码必须包含示例代码中规定的所有字段,因为这是强制性的。
- 使用设置器函数进行数值分配,该函数接受两个参数 –
setter(参数名称, 参数值)
。
请参阅银行列表参数,了解 PayMaster 商家插件(MPI)支持的字段。
步骤 7:生成支付
一旦分配了所有必需的值,商家将调用支付请求消息生成器来生成支付 – paymentMessage
。
步骤 8:发送支付消息至 PayMaster 网关
paymentMessage
将被发送至 PayMaster 网关以获取银行列表。
步骤 1:软件包
商家应设置并包含 PayMaster 商家插件(MPI)Python 软件包到商家应用程序中。
步骤 2:导入
对于 UPP 支付,商家应将以下内容包含到商家代码中:
PropertiesReader
- 用于读取属性文件。PayMasterEntity
- 用于为 PayMaster UPP 支付分配所有可接受的值。PaymentRequestMessageBuilder
- 用于生成 PayMaster UPP 支付请求消息。
步骤 3:源代码
商家必须将银行列表放置在支付请求的 AcqBank
字段中。
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("BankListing.properties","PayMasterProperties/")
##Declare variable for Payment Master Entity
paymentRequestEntity = PayMasterEntity()
##Get all the parameter values from the user side and set into Payment Master Entity
paymentRequestEntity.setter("PaymentID", "B01")
paymentRequestEntity.setter("CountryCode", "MY")
paymentRequestEntity.setter("CurrCode", "458")
paymentRequestEntity.setter("FICode", "RPP")
##Call Payment Master Payment Request Message Builder to generate the message
messageBuilder = PaymentRequestMessageBuilder()
paymentMessage = messageBuilder.buildPaymentRequestMessage(paymentRequestEntity, propertiesReader)
##POST request to Payment Master Gateway for bank listing
initial_url = "https://xxx.finexusgroup.com/upp/faces/banklisting.xhtml?" + paymentMessage
response = requests.post(initial_url)
.....
步骤 4:指明 PayMaster 属性文件位置
商家必须使用 PropertiesReader
指明 PayMaster 属性文件的位置。
步骤 5:将值分配给支付请求实体
商家必须为 PayMaster 请求实体分配值。商家的代码必须包含示例代码中规定的所有字段,因为这是强制性的。
- 使用设置器函数进行数值分配,该函数接受两个参数 –
setter(参数名称, 参数值)
。
请参阅银行列表参数,了解 PayMaster 商家插件(MPI)支持的字段。
步骤 6:生成银行列表
一旦分配了所有必需的值,商家调用支付请求消息生成器来生成银行列表 – paymentMessage
。
步骤 7:发送支付消息至 PayMaster 网关
paymentMessage
将被发送至 PayMaster 网关以进行支付。
步骤 1:库
商家应设置并包含 PayMaster 商家插件(MPI)Node.js 库到商家应用程序中。
步骤 2:源代码
商家必须将银行列表放置在支付请求的 AcqBank
字段中。
var paymaster = require('./js/PayMaster.min.js');
module.exports = function (app) {
app.post('/UPPPayment', (req, res)=>{
.....
paymaster.PropertiesReader('./properties/','BankListing.properties');
paymaster.setter('PaymentID', 'B01');
paymaster.setter('CountryCode', 'MY');
paymaster.setter('FICode', 'RPP');
payment.MERCH_BankListingRequest(paymaster.PaymentRequestEntity, paymaster.propDetails, function(err, response, result){
if(err){
throw err;
}
if(response){
const initialUrl = "https://xxx.finexusgroup.com/upp/faces/banklisting.xhtml?" + result;
async function sendPostRequest() {
const response = await axios.post(initialUrl);
.....
}
sendPostRequest();
}
});
});
}
步骤 3:指示 PayMaster 属性文件位置
商家必须使用 PropertiesReader
指明 PayMaster 属性文件的位置。
步骤 4:分配值给支付请求实体
商家必须为 PayMaster 请求实体分配值。商家的代码必须包含示例代码中规定的所有字段,因为这是强制性的。
- 使用设置器函数进行数值分配,该函数接受两个参数 –
setter(参数名称, 参数值)
。
请参阅银行列表参数,了解 PayMaster 商家插件(MPI)支持的字段。
步骤 5:生成请求消息
使用 MERCH_BankListingRequest()
函数生成支付请求消息。
步骤 6:发送支付消息至 PayMaster
JavaScript 返回的支付消息将发送至 PayMaster 进行银行列表操作。