QR Payment Parameters
Method GETURL
https://xxx.finexusgroup.com/upp/faces/generateQrPayload.xhtml?
The following parameters are provided to PayMaster for payment processing.
Upon completion of the QR Transaction Request, PayMaster will send a response to the merchant server. The merchant server should then examine the transaction status (TxnStat
) to determine the outcome of the QR Transaction Request.
- Request Parameters
- Response Parameters
Mandatory / Conditional Fields
Field Name | Type | Length | Description | Example |
---|---|---|---|---|
PaymentID | String | 3 | Payment method / function. | "Q01" - QR Payload Generation, "C05" - E-Commerce Transaction Refund, "C15" - Reversal for E-Commerce Transaction |
MerchantID | String | 15 | Assigned merchant ID (MID). | "000010000099939" |
ProcCode | String | 6 | Procedure Code. | "003000" |
SndrID | String | 34 | Conditional field Sender Identification. Note: Optional for PaymentID = "Q01". SndrID can be a Primary Account Number; LOC Account number; URN; LOC Account Number + last 4 digits PAN or Token to use to uniquely identify the consumer presented QR. | "FNXSMYNX" |
TxnAmt | String (Numeric) | 12 | Transaction amount. | "1280.99" |
POSCond | String | 2 | Point-of-sale or Point-of-service condition code. | "67" |
CurrCode | String | 3 | ISO 4217 currency numeric code. | "458" |
ExpTxnAmt | String | 1 | Exponent of transaction amount. | "2" |
OrigTxnAmt | String (Numeric) | 12 | Conditional field Original transaction amount. Note: Applicable to PaymentID = "Q02" only. Mandatory if OrigCurrCode exists. | "298.85" |
OrigCurrCode | String | 3 | Conditional field Original transaction ISO 4217 currency numeric code. Note: Mandatory if OrigTxnAmt exists. | "840" |
CountryCode | String | 2 | Conditional field ISO 3166-1 alpha-2 country code. Note: Applicable to PaymentID = "Q02" only. | "MY" |
FICode | String | 20 | Conditional field Financial insitution code that entitled for the promotion. Appendix 4 | "CIMB" |
ServiceID | String | 3 | Service ID. | "FNX" |
MerchRefNo | String | 40 | Unique merchant reference number. | "2021061414062021072" |
SuccRespURL | String | 512 | Successful payment page. | "https://xxx.xxxxx.xxx/approved.jsp " |
BizNm | String | 35 | Conditional field Business Name. Note: Applicable to PaymentID = "Q02" only. | "Inside Scoop Sdn. Bhd" |
BizAddrZIPCode | String | 10 | Conditional field Business Address ZIP Code. Note: Applicable to PaymentID = "Q02" only. | "63000" |
BizAddrStateCode | String | 4 | Conditional field Business Address State Code. Note: Applicable to PaymentID = "Q02" only. | "10" |
TerminalID | String | 8 | Terminal ID. Note: An identification code of fewer than 8 positions must be left-justified and the remainder of the field space-filled. | "T2022121" |
PayloadInd | String | 2 | QR Payload Indicator. | "12" – Merchant Presented Dynamic QR Code |
PANInd | String | 2 | PAN Indicator. | "26" – DuitNow RPP, "97" – Alipay+ |
SndrIDType | String | 1 | Conditional field Sender Identification Type. Note: Optional for PaymentID = "Q01". | "2" - Unique Reference Number (URN) |
QRPayload | String | 512 | Conditional field QR Payload. Note: Applicable to PaymentID = "Q02" only. Refers to QRPayload in response message of the previous PaymentID = "Q01". | "…" |
TxnFlag | String | 2 | Conditional field Indication of the transaction response reaction. Note: Applicable to PaymentID = "Q02" only. | "CP" – Consumer Presented Payment |
MerchPAN | String | 31 | Conditional field Merchant PAN. Note: Applicable to PaymentID = "Q02" only. | "4322071003601010" |
Fields formats
TxnAmt
andOrigTxnAmt
- Transaction amount with two decimals and thousand symbols. Maximum length includes the digit(s) after the decimal place.
Optional Fields
Field Name | Type | Length | Description | Example |
---|---|---|---|---|
AuthIDRespCode | String | 6 | Authorisation ID Response Code (AuthIDRespCode ) of the response message of the previous PaymentID = "Q01". Note: Applicable to PaymentID = "Q02" only. | "000000" |
RetrievalRefNo | String | 12 | Retrieval Reference Number. Note: Applicable to PaymentID = "Q02" only. | "306274008021" |
UserContact | String | 20 | Customer contact number. | "6012888888" |
UserIPAddress | String | 30 | User IP address. Note: Subjected to Payment Provider requirement. | "192.168.2.2" |
PortalUserID | String | 256 | Portal user ID. | O5ACzHbvQNm3iNAwdvi1Sg== |
DeviceID | String | 64 | Customer Device ID. | "463508442328857/02" |
MCC | String | 4 | Merchant category code or merchant classification code. Note: Applicable to PaymentID = "Q02" only. | "5411" |
TxnID | String | 50 | Transaction ID. Note: Only supported for UnionPay URL QR. Applicable to PaymentID = "Q02" only. | "9205845" |
Mandatory / Conditional Fields
Field Name | Type | Length | Description | Example |
---|---|---|---|---|
MerchantID | String | 15 | Merchant ID. Note: Same value of MerchantID stored in properties file. | "000010000099939" |
TxnStatus | String | 2 | Transaction status. Appendix 3 | "00" |
RetrievalRefNo | String | 12 | Conditional field Retrieval reference number. Note: Available if this field returned by Acquirer in the response message. | "301930987112" |
ServiceID | String | 3 | Service ID. | "FNX" |
MerchRefNo | String | 40 | Unique merchant reference number. | "2021061414062021072" |
QRPayload | String | 512 | Quick Response Payload. Note: Available if good response received. | "…" |
BarcodePayload | String | 512 | Conditional field Barcode Payload. Note: Applicable to PaymentID = Q01 only. | "…" |
SHValue | String | 64 | Secure Hash Value. Appendix 1 | "..." |
Optional Fields
Field Name | Type | Length | Description | Example |
---|---|---|---|---|
SndrID | String | 34 | Sender Identification. | "FNXSMYNX" |
TxnAmt | String (Numeric) | 12 | Transaction amount. | "000000001000" |
CurrCode | String | 3 | Currency code. | "458" |
AuthIDRespCode | String | 6 | Authorisation ID Response Code. Note: Generated by issuer and forwarded to Acquirer to indicate the approval of a transaction. Available for successful payment. | "000000" |
ExpTxnAmt | String | 1 | Exponent of transaction amount. | "2" |
TxnStatDetCde | String | 4 | Transaction status detail code. | "0000" |
TxnStatMsg | String | 256 | Transaction status message. | "SUCCESS" |
MerchRefNo
, CurrCode
, TxnAmt
and SndrID
have the same value as in prior payment request.
Example Message
- Request
- Response
QR Payload Generation Request
curl -X GET
"https://xxx.finexusgroup.com/upp/faces/generateQrPayload.xhtml?h001_MTI=0180&h002_VNO=06&h003_TDT=20230619&h004_TTM=09593634&f001_MID=000010000012639&f003_ProcCode=000000&f004_PAN=&f007_TxnAmt=000000000100&f008_POSCond=67&f010_CurrCode=458&f019_ExpTxnAmt=2&f256_FICode=&f260_ServID=FNX&f263_MRN=20230619085230QR&f265_RURL_CCPS=https%3A%2F%2Fsandbox.finexusgroup.com%2Fdevserver%2Fadmin%2Fapi%2Fpaymaster%2Fintrx&f279_HP=&f285_IPAddr=&f289_CustId=&f354_TID=10004028&f366_PayloadInd=12&f367_PANInd=26&f368_AcctInd=&f369_DevID=&t001_SHT=SH2&t002_SHV=C00365DC7FFF64961D86CA44D203A3C3E6727910259CA1F15E43FD61D8B01243
QR Payload Generation Response
"https://xxx.finexusgroup.com/payment/success?h001_MTI=0190&h002_VNO=06&h003_TDT=20230619&h004_TTM=09593634&f001_MID=000010000012639&f004_PAN=&f007_TxnAmt=000000000100&f009_RespCode=00&f010_CurrCode=458&f011_AuthIDResp=265486&f019_ExpTxnAmt=2&f023_RRN=317009265486&f258_TxnStatDetCde=0000&f259_TxnStatMsg=Approved&f260_ServID=FNX&f263_MRN=20230619085230QR&f370_QRPayload=00020201021226470014A00000061500010106890038021500001000001263952045814530345854041.005802MY5915FINEXUS+SDN+BHD6015WP+KUALA+LUMPUR610513537622807081000402890123170092654866304C06D&f371_BarcodePayload=&t001_SHT=SH2&t002_SHV=14482A605D9E1E5322DFEC7EE4D75C51939D1CAA428F73DB4F4BFA8D7FFAEE7A