UPP 支付参数
Method : GET
URL:https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?
信息
以下参数供 PayMaster 用于支付处理。完成 UPP 支付流程后,PayMaster 将根据完成状态将客户浏览器重定向回指定的返回 URL。
- 请求参数
- 返回参数
强制 / 有条件的字段
字段名称 | 类型 | 长度 | 描述 | 示例 |
---|---|---|---|---|
PaymentID | 字符串 | 3 | 支付方式 / 功能。 | "U01" - UPP 交易, "C04" - 周期性交易, "C15" - 电子商务交易的撤销 |
EcommMerchInd | 字符串 | 1 | 电子商务商家指示器。 | "0" - 非电子商务商家, "1" - 电子商务(3D 安全), "2" - 电子商务(非 3D 安全/MOTO) |
MerchRefNo | 字符串 | 40 | 唯一商家参考编号。 | "2021061414062021072" |
CountryCode | 字符串 | 2 | ISO 3166-1 alpha-2 国家代码。 | "MY" |
CurrCode | 字符串 | 3 | ISO 4217 货币数字代码。 | "458" |
TxnAmt | 字符串(数字) | 12 | 带有两位小数和千位分隔符的交易金额。 注意:最大长度包括小数点后的数字。 | "1280.99" |
ExpTxnAmt | 字符串 | 1 | 交易金额的指数。 | "2" |
TokenFlag | 字符串 | 1 | 卡片令牌化。 | "Y" – 同意将用于支付的卡片详细信息存储到 PayMaster 系统中, "N" – 不同意/FPX 支付 |
MerchUserID | 字符串 | 50 | 条件字段 商家用户 ID。 注意:如果 TokenFlag 是 "Y",则必填。 | "D1022012123" |
PreAuthFlag | 字符串 | 1 | 预授权交易。 | "A" – 账户验证交易, "N" – 正常交易, "Y" – 预授权交易 |
TokenShrtName | 字符串 | 20 | 条件字段 PAN(卡号)配置文件参考名称。 注意:如果 TokenFlag 是 “Y”,则必填。 | "ABC" |
CardIssuerCode | 字符串 | 512 | 条件字段 卡发卡方代码,用于指示哪个发卡方的卡或 BINs/IINs 有资格获得促销。附录 5 注意: 如果 PromoCode 是 "49" 或 "60",则必填。如有多个值,请使用 “|” 分隔。 | "MXX", "43220400|52685200|432206" |
FICode | 字符串 | 20 | 条件字段 有资格获得促销的金融机构代码。附录 4 注意:如果 PromoCode 是 "51",则必填。 | "MXX" |
OrigCurrCode | 字符串 | 3 | 条件字段 原始交易 ISO 4217 货币数字代码。 注意:如果 OrigTxnAmt 存在,则必填。 | "840" |
OrigTxnAmt | 字符串(数字) | 12 | 条件字段 原始交易金额。 注意:如果 OrigCurrCode 存在,则必填。 | "298.85" |
ExpOrigTxnAmt | 字符串 | 1 | 条件字段 原始交易金额的指数。 注意:如果 OrigTxnAmt 存在,则必填。 | "2" |
Signature | 字符串 | 8 | 条件字段 签名。附录 2 注意:如果 PortalUserID 存在,则必填。 | "71800248" |
可选字段
字段名称 | 类型 | 长度 | 描述 | 示例 |
---|---|---|---|---|
OrderRefNo | 字符串 | 34 | 订单参考号。 | "OTMEGASTORE-20010831-ONLINE-007" |
OrderRefNo
字段具有以下格式。
OrderRefNo
字段具有以下格式。前两个字符表示使用类型,后跟 32 个订单参考号的字符。
支持的格式如下,可能会在未来扩展:
EC – 电子商务
MT – 邮件订单/电话订单
OF – 线下交易
OT – 其他
AT – 航空票;位置 3 到 16 是航空票号码;位置 17-19 是航空公司 3 位字母代码。
对于 EC、MT、OF 和 OT - 位置 3 到 34 由商家服务器自由格式化。
OrderDesc | String | 256 | 订单描述。 | "Coffee Table" |
UserEmail | String | 256 | 客户电子邮件地址。 | "customer123@gmail.com" |
UserContact | String | 20 | 客户联系方式。 注意: 以6开头。 | "6012888888" |
UserIPAddress | String | 30 | 用户IP地址。 | "192.168.2.2" |
PromoCode | String | 2 | 促销代码。 | "01" – VISA卡, "02" – 万事达卡, "49" – 特定卡发行商, "60" – 卡发行商的特定BIN/IIN列表, "50" – 仅直接借记, "51" – 特定直接借记银行 |
CardType | String | 3 | 卡类型。 | "VSA" – Visa卡, "MST" - 万事达卡, "CUP" – 中国银联, "AP" – 支付宝+ |
CCProcFee | String (Numeric) | 12 | 信用卡处理费。 | "010" |
DDProcFee | String (Numeric) | 12 | 直接借记处理费。 | "010" |
InvoiceNo | String | 50 | 发票号码。 | "Inv202201120012" |
Fee | String | 257 | 扩展费用。 | "f00103200f0020250" |
Fee
字段具有以下TLV格式。
Fee
字段具有以下TLV格式。字段 | 类型 | 长度 | 描述 |
---|---|---|---|
标签 | 字符串 | 4 | 包含标识费用类型的标签。 |
长度 | 字符串 (数字) | 2 | 指定费用金额的长度。 |
值 | 字符串 (数字) | 包含标签中识别的实际费用金额。 |
SuccRespURL | String | 512 | 支付成功页面。 | "https://xxx.xxxxx.xxx/approved.jsp" |
UnsuccRespURL | String | 512 | 支付失败页面。 | "https://xxx.xxxxx.xxx/declined.jsp" |
CancelRespURL | String | 512 | 取消支付页面。 | "https://xxx.xxxxx.xxx/cancel.jsp" |
LangLocale | String | 5 | 显示页面的语言。 | "en" |
MerchHostID | String | 8 | 商户主机标识符。 | "M2022121" |
MerchSessionID | String | 256 | 商户会话ID。 | "c8t3gprjtl35ms4sm937hj7s30" |
TerminalID | String | 8 | 终端标识符。 | "T2022121" |
PortalUserID | String | 256 | 门户用户ID。 | "O5ACzHbvQNm3iNAwdvi1Sg==" |
POSEnvFlag | String | 1 | POS环境标志。 | "C" – 未安排凭证文件, "I" – 分期支付, "R" – 循环购买 |
必填/有条件的字段
字段 | 类型 | 长度 | 描述 | |
---|---|---|---|---|
MerchantID | String | 15 | 商户ID。 注意:与属性文件中存储的 MerchantID 值相同。 | "000010000099939" |
CardNo | String | 19 | 条件性字段 卡号。 | "545301XXXXXX5323" |
ExpiryYear | String | 2 | 条件性字段 卡到期年份。 | "27" |
ExpiryMth | String | 2 | 条件性字段 卡到期月份。 | "10" |
TxnStatus | String | 2 | 交易状态。附录 3 | "00" |
AuthIDRespCode | String | 6 | 条件性字段 授权ID响应代码。 注意:成功支付必需。 | "397939" |
RetrievalRefNo | String | 12 | 条件性字段 检索参考号。 注意:如果此字段由获取器在响应消息中返回,则可用。 | "301930987112" |
OrigRespCode | String | 8 | 条件性字段 原始响应代码。附录 3 | "00" |
DDRespCode | String | 8 | 条件性字段 直接借记响应代码。 注意:如果 UPP_PM = 00 可用。 | "00" |
FICode | String | 20 | 条件性字段 金融机构代码。 | "MXX" |
MerchRefNo | String | 40 | 商户参考号。 | "20230119110520FNX" |
FPXRefNo | String | 20 | 条件性字段 唯一的 FPX 参考号。 | "3143323587217932" |
OrgDDRespCode | String | 8 | 条件性字段 原始直接借记响应代码。 注意:如果 UPP_PM = 00 可用。 | "22" |
CardType | String | 3 | 条件性字段 卡类型。 | "VSA" – Visa 卡, "MST" - 万事达卡, "CUP" – 中国银联, "AP" – 支付宝+ |
Token | String | 19 | 条件性字段 存储的新卡参考号。 注意:如果 TokenFlag 是 "Y" 则为必填项。 | "8801923000216577863" |
MaskCardNo | String | 19 | 条件性字段 掩码卡号。 注意:如果 TokenFlag 是 "Y" 则为必填项。 | "84415977423665" |
SHAlgorithmType | String | 3 | 安全哈希算法类型。 | "SH2" |
SHValue | String | 64 | 安全哈希值。附录 1 | "..." |
可选字段
字段名 | 类型 | 长度 | 描述 | 例子 |
---|---|---|---|---|
TxnDtTm | 字符串 | 14 | 交易日期和时间。 格式:yyyymmddhhmmss | "20230119110544" |
TxnAmt | 字符串(数字) | 12 | 交易金额 | "000000001000" |
CurrCode | 字符串 | 3 | 货币代码 | "458" |
ExpTxnAmt | 字符串 | 1 | 交易金额指数 | "2" |
PymtGwRefNo | 字符串 | 20 | 支付网关参考号 | "230119110548AC031FNX" |
TxnStatDetCde | 字符串 | 4 | 交易状态详细代码 | "0000" |
TxnStatMsg | 字符串 | 256 | 交易状态消息 | "SUCCESS" |
MerchHostID | 字符串 | 8 | 商户主机标识符 | "M2022121" |
MerchSessionID | 字符串 | 256 | 商户会话ID | "20230113172620" |
OrderRefNo | 字符串 | 34 | 订单参考号 | "OTMEGASTORE-20010831-ONLINE-007" |
UppPymtMode | 字符串 | 2 | 支付模式 | "00" – 信用/借记卡支付, "01" – FPX支付, "02" – QR支付, "99" – 未知或错误 |
AcqBank | 字符串 | 20 | 提供分期支付银行的收单银行 | "EMXX" |
IPPTenure | 字符串 | 3 | 分期支付计划期限 | "3" |
EcommMerchInd | 字符串 | 1 | 电子商务商户指示符 | "0" - 非电子商务商户, "1" - 电子商务(3D安全), "2" - 电子商务(非3D安全/MOTO) |
TokenFlag | 字符串 | 1 | 卡令牌化 | "Y" – 同意将用于支付的卡详情存储到PayMaster系统中, "N" – 不同意/FPX支付 |
MerchUserID | 字符串 | 50 | 商户用户ID | "guest-finexus" |
TokenShrtName | 字符串 | 20 | 档案参考名称 | "fnxcard1" |
POSEnvFlag | 字符串 | 1 | POS环境标志 | "C" – 未安排的文件凭证, "I" – 分期, "R" – 循环 |
信息
MerchRefNo
(商户参考号)、SHAlgorithmType
(安全哈希算法类型)、OrderRefNo
(订单参考号)、CurrCode
(货币代码)、TxnAmt
(交易金额)、ExpTxnAmt
(预期交易金额)、CardType
(卡类型)、MerchUserID
(商户用户ID)、TokenFlag
(令牌标志)、TokenShrtName
(令牌简称)、MerchHostID
(商户主机ID)、MerchSessionID
(商户会话ID)、EcommMerchInd
(电子商务商户指数)和 POSEnvFlag
(POS环境标志)这些字段的值与先前的支付请求相同。
示例消息
- 请求
- 响应
UPP Payment Authorization Request
curl -X GET "https://xxx.finexusgroup.com/upp/faces/upp/payment.xhtml?h001_MTI=0280&h002_VNO=06&h003_TDT=20221225&h004_TTM=150505000&f001_MID=D1022012123&f007_TxnAmt=000000128099&f010_CurrCode=458&f019_ExpTxnAmt=2&f247_OrgTxnAmt=000000029885&f248_OrgCurrCode=840&f249_TxnCh=API&f250_CCProcFee=000000000010&f251_DDProcFee=000000000010&f252_PromoCode=01&f253_CntyCode=MY&f255_IssCode=43220400|52685200|432206&f256_FICode=MXX&f260_ServID=FNX&f261_HostID=M2022121&f262_SessID=c8t3gprjtl35ms4sm937hj7s30&f263_MRN=2021061414062021072&f264_Locale=en&f270_ORN=OTMEGASTORE-20010831-ONLINE-007&f271_ODesc=Coffee+Table&f278_EMailAddr=customer123%40gmail.com&f279_HP=6012888888&f280_RURL_UPPPS=http%3A%2F%2Fxxx.xxxxx.xxx%2Fapproved.jsp&f281_RURL_UPPPU=http%3A%2F%2Fxxx.xxxxx.xxx%2Fdeclined.jsp&f282_RURL_UPPPC=http%3A%2F%2Fxxx.xxxxx.xxx%2Fcancel.jsp&f285_IPAddr=192.168.2.2&f287_ExpOrgTxnAmt=2&f350_CrdTyp=VSA&f354_TID=T2022121&f325_ECommMercInd=1&f339_TokenFlg=N&f344_MercCustId=&f347_TokenShrtNm=ABC&f362_PreAuthFlg=N&f363_InvNum=Inv202201120012&f364_Fee=f00103200f0020250&f365_POSEnvFlg=C&t001_SHT=SH2&t002_SHV=E73CEDA9D9A8D1AAF59BDB919EF7C82D52671A4B457CE816BCE91AFF31485259" \
UPP Payment Authorization Response
"https://xxx.finexusgroup.com/success?h001_MTI=0290&h002_VNO=06&h003_TDT=20230119&h004_TTM=11054420&f001_MID=000010000099939&f004_PAN=545301XXXXXX5323&f005_ExpDate=2710&f006_TxnDtTm=20230119110544&f007_TxnAmt=000000001000&f009_RespCode=00&f010_CurrCode=458&f011_AuthIDResp=397939&f019_ExpTxnAmt=2&f023_RRN=301930987112&f024_OrgRespCode=00&f254_DDRespCode=00&f256_FICode=&f257_PGRN=230119110548AC031FNX&f258_TxnStatDetCde=0000&f259_TxnStatMsg=SUCCESS&f261_HostID=&f262_SessID=20230113172620&f263_MRN=20230119110520FNX&f270_ORN=&f277_DDRN=&f283_UPP_PM=00&f286_OrgDDRespCode=22&f350_CrdTyp=MST&f352_AcqBank=&f353_IPPTenure=&f325_ECommMercInd=1&f339_TokenFlg=Y&f344_MercCustId=guest-finexus&f346_Token=8801923000216577863&f347_TokenShrtNm=fnxcard1&f348_MaskPAN=&f365_POSEnvFlg=R&t001_SHT=SH2&t002_SHV=0F3086E879F80EB6BFA8D0E3FFD2D489AE8F4DDFA7B8F8511151B0BE27CF3B79"