Payment Process API
Data Attribute Reference
Data Type
- A: Alphabet
- AN: Alphanumeric
- C: Characters
- B: Boolean
- D: Decimal
- N: Numeric
Mandatory attributes
- M: Mandatory
- C: Conditional
- O: Optional
Payment Inquiry Request Parameters
<PaymentProcessRequest>
<version>3.8</version>
<timeStamp></timeStamp>
<merchantID></merchantID>
<processType>I</processType>
<invoiceNo></invoiceNo>
<actionAmount></actionAmount>
</PaymentProcessRequest>
Parameter | Data Type/ Length | Mandatory | Description |
---|---|---|---|
version | AN 5 | M | Request version number Current: 3.8 |
timeStamp | C 22 | O | Request time stamp * In ddMMyyHHmmss format |
merchantID | C 15 | M | Merchant ID |
processType | C 2 | M | Payment process command * I = Inquiry |
invoiceNo | C 50 | M | Invoice number / order ID |
actionAmount | D 10,2 | O | Amount * In two-decimal format |
Refund Request Parameters
<PaymentProcessRequest>
<version>3.8</version>
<timeStamp></timeStamp>
<merchantID></merchantID>
<processType>R</processType>
<invoiceNo></invoiceNo>
<actionAmount></actionAmount>
<bankCode></bankCode>
<accountName></accountName>
<accountNumber></accountNumber>
<subMerchantList>
<subMerchant subMID="" subAmount="">
<loyaltyPayments>
<loyaltyRefund>
<loyaltyProvider></loyaltyProvider>
<externalMerchantId></externalMerchantId>
<totalRefundRewardAmount></totalRefundRewardAmount>
<refundRewards>
<reward>
<type></type>
<quantity></quantity>
</reward>
</refundRewards>
</loyaltyRefund>
</subMerchant>
</subMerchantList>
<notifyURL></notifyURL>
<idempotencyID></idempotencyID>
<loyaltyPayments>
<loyaltyRefund>
<loyaltyProvider></loyaltyProvider>
<externalMerchantId></externalMerchantId>
<totalRefundRewardAmount></totalRefundRewardAmount>
<refundRewards>
<reward>
<type></type>
<quantity></quantity>
</reward>
</refundRewards>
</loyaltyRefund>
</loyaltyPayments>
</PaymentProcessRequest>
Parameter | Data Type/ Length | Mandatory | Description |
---|---|---|---|
version | AN 5 | M | Request version number Current : 3.8 For Loyalty Feature : 4.1 |
timeStamp | C 22 | O | Request time stamp * In ddMMyyHHmmss format |
merchantID | C 15 | M | Merchant ID |
processType | C 2 | M | Payment process command * R = Refund |
invoiceNo | C 50 | M | Invoice number / order ID |
actionAmount | D 10,2 | M | Amount In two-decimal format Should not exceed original transaction amount * For partial refunds, the total refund amount (previous+current refund) should not exceed original transaction amount |
bankCode | C 10 | O | Customer’s bank account’s bank code * Only applicable to APM transaction |
accountName | C 50 | O | Customer’s bank account name * Only applicable to APM transaction |
accountNumber | C 50 | O | Customer’s bank account number * Only applicable to APM transaction |
subMerchantList | Array | O | Only applicable to MasterMerchant Account |
subMerchant.subMID | C 15 | M | Sub Merchant ID |
subMerchant.subAmount | D 10,2 | M | Refund amount In 2- decimal format The total of all subAmount(s) must match the actionAmount |
subMerchant.loyaltyRefund | Array | O | Loyalty info |
subMerchant.loyaltyRefund.loyaltyProvider | AN 20 | O | Loyalty points provider id |
subMerchant.loyaltyRefund.externalMerchantId | AN 50 | C | External Loyalty Merchant ID |
subMerchant.loyaltyRefund.totalRefundRewardAmount | D 12,5 | O | Total Refund Reward Amount |
subMerchant.loyaltyRefund.refundRewards | Array | O | List of Rewards |
subMerchant.loyaltyRefund.refundRewards.reward.type | C 1 | O | Loyalty Type, "P" (POINTS) /"V" (Voucher) |
subMerchant.loyaltyRefund.refundRewards.reward.quantity | D 12,5 | O | Points quantity |
notifyURL | C 250 | O | URL to notify final refund status * Uses the same format as ‘PaymentProcessRe sponse’ |
userDefined1 | C 150 | O | User defined data |
userDefined2 | C 150 | O | User defined data |
userDefined3 | C 150 | O | User defined data |
userDefined4 | C 150 | O | User defined data |
userDefined5 | C 150 | O | User defined data |
idempotencyID | C 100 | O | A repeated request with the same idempotencyID will return the same response as the original request |
loyaltyPayments | Array | O | List of loyalty. |
loyaltyRefund.loyaltyProvider | AN 20 | O | Loyalty refund info |
loyaltyRefund.externalMerchantId | AN 50 | C | External Loyalty Merchant ID |
loyaltyRefund.totalRefundRewardAmount | D 12,5 | O | Total Refund Reward Amount |
loyaltyRefund.refundRewards | Array | O | List of Rewards |
loyaltyRefund.refundRewards.reward.type | C 1 | O | Loyalty Type, "P" (POINTS) /"V" (Voucher) |
loyaltyRefund.refundRewards.reward.quantity | D 12,5 | O | Points quantity |
Void / Cancel Request Parameters
<PaymentProcessRequest>
<version>3.8</version>
<timeStamp></timeStamp>
<merchantID></merchantID>
<processType>V</processType>
<invoiceNo></invoiceNo>
<actionAmount></actionAmount>
<bankCode></bankCode>
<accountName></accountName>
<accountNumber></accountNumber>
<subMerchantList>
<subMerchant subMID="" subAmount="" />
<subMerchant subMID="" subAmount="" />
</subMerchantList>
<idempotencyID></idempotencyID>
</PaymentProcessRequest>
Parameter | Data Type/ Length | Mandatory | Description |
---|---|---|---|
version | AN 5 | M | Request version number Current: 3.8 |
timeStamp | C 22 | O | Request time stamp * In ddMMyyHHmmss format |
merchantID | C 15 | M | Merchant ID |
processType | C 2 | M | Payment process command * V = Void/Cancel |
invoiceNo | C 50 | M | Invoice number / order ID |
actionAmount | D 10,2 | O | Amount In two-decimal format Should not exceed original transaction amount |
bankCode | C 10 | O | Customer’s bank
|
accountName | C 50 | O | Customer’s bank account name
|
accountNumber | C 50 | O | Customer’s bank account number
|
subMerchantList | Array | O | Only applicable to MasterMerchant Account |
userDefined1 | C 150 | O | User defined data. |
userDefined2 | C 150 | O | User defined data. |
userDefined3 | C 150 | O | User defined data. |
userDefined4 | C 150 | O | User defined data. |
userDefined5 | C 150 | O | User defined data. |
idempotencyID | C 100 | O | A repeated request with the same idempotencyID will return the same response as the original request |
Settle / Capture Request Parameters
<PaymentProcessRequest>
<version>3.8</version>
<timeStamp></timeStamp>
<merchantID></merchantID>
<processType>S</processType>
<invoiceNo></invoiceNo>
<actionAmount></actionAmount>
<subMerchantList>
<subMerchant subMID="" subAmount="" />
<subMerchant subMID="" subAmount="" />
</subMerchantList>
<idempotencyID></idempotencyID>
</PaymentProcessRequest>
Parameter | Data Type/ Length | Mandatory | Description |
---|---|---|---|
version | AN 5 | M | Request version number Current : 3.8 |
timeStamp | C 22 | O | Request time stamp * In ddMMyyHHmmss format |
merchantID | C 15 | M | Merchant ID |
processType | C 2 | M | Payment process command * S = Settlement |
invoiceNo | C 50 | M | Invoice number / order ID |
actionAmount | D 10,2 | M | Amount In two-decimal format Should not exceed original transaction amount |
subMerchantList | Array | O | Only applicable to MasterMerchant Account |
subMerchant.subMID | C 15 | M | Sub Merchant ID |
subMerchant.subAmount | D 10,2 | M | Settlement amount In two-decimal format Total of all subAmount(s) must match the actionAmount |
userDefined1 | C 150 | O | User defined data. |
userDefined2 | C 150 | O | User defined data. |
userDefined3 | C 150 | O | User defined data. |
userDefined4 | C 150 | O | User defined data. |
userDefined5 | C 150 | O | User defined data. |
idempotencyID | C 100 | O | A repeated request with the same idempotencyID will return the same response as the original request |
Refund Status Inquiry Request Parameters
Parameter | Data Type/ Length | Mandatory | Description |
---|---|---|---|
version | AN 5 | M | Request version number Current : 3.8 |
timeStamp | C 22 | O | Request time stamp * In ddMMyyHHmmss format |
merchantID | C 15 | M | Merchant ID |
processType | C 2 | M | Payment process command * RS = Refund Status |
invoiceNo | C 50 | M | Invoice number / order ID |
actionAmount | D 10,2 | O | Amount * In two-decimal format |
Response Parameters
<PaymentProcessResponse>
<version></version>
<timeStamp></timeStamp>
<respCode></respCode>
<respDesc></respDesc>
<processType></processType>
<invoiceNo></invoiceNo>
<amount></amount>
<status></status>
<approvalCode></approvalCode>
<referenceNo></referenceNo>
<transactionDateTime></transactionDateTime>
<paidAgent></paidAgent>
<paidChannel></paidChannel>
<maskedPan></maskedPan>
<eci></eci>
<subMerchantList>
<subMerchant subMID="" subAmount="" />
<subMerchant subMID="" subAmount="" />
</subMerchantList>
<refundList>
<refund referenceNo="" status="" amount="" dateTime=””
userDefined1="" userDefined2="" userDefined3="" userDefined4=""
userDefined5="" />
<refund referenceNo="" status="" amount="" dateTime=””
userDefined1="" userDefined2="" userDefined3="" userDefined4=""
userDefined5=""/>
</refundList>
<paymentScheme></paymentScheme>
<processBy></processBy>
<idempotencyID></idempotencyID>
</PaymentProcessResponse>
Parameter | Data Type / Length | Mandatory | Description |
---|---|---|---|
version | AN 5 | M | Request version number Current version 3.8 |
timeStamp | C 22 | M | Request time stamp * In ddMMyyHHmmss format |
respCode | C 2 | M | Response code Refer to Response Code List |
respDesc | C 100 | M | Response code description |
processType | C 2 | M | Payment process command I = Inquiry S = Settlement V = Void/Cancel R = Refund * RS = Refund Status |
invoiceNo | C 50 | M | Unique transaction invoice number * Generated by merchant |
amount | D 10,2 | M | Payment amount made by customer, or refund / captured amount |
status | C 3 | M | Status of the transaction requested Refer to Status Code List |
approvalCode | C 6 | O | Transaction Approval Code * Provided by credit card host or by WebPay provider |
referenceNo | C 30 | O | Reference number |
refundReferenceNo | C 30 | O | Refund reference number |
transactionDateTime | C 14 | O | Transaction date and time * In yyyyMMddHHmmss format |
paidAgent | C 30 | O | Agent code that customer made payment with Refer to Agent List. |
paidChannel | C 30 | O | Channel code that customer made payment with Refer to Channel List. |
maskedPan | C 16 | O | Masked credit card number |
eci | C 3 | O | 3DS E-Commerce Indicator * Only for card payment |
subMerchantList | [Array] | O | Only applicable to MasterMerchant Account |
subMerchant.subMID | C 15 | M | Sub Merchant ID * Required only for MasterMerchant Account. |
subMerchant.subAmount | D 10,2 | M | Refunded / settled amount In two-decimal format Required only for Master Merchant Account |
refundList | [Array] | O | Only applicable to Refund Status request |
refund.referenceNo | C 30 | M | Refund reference number * Returned by PGW upon completion of refund request |
refund.status | C 3 | M | Refund status Refer to Status List. |
refund.amount | D 10,2 | M | Payment amount made by customer, or refund / captured amount |
refund.dateTime | C 14 | M | Refund approval date and time * In yyyyMMddHHmmss format |
refund.userDefined1 | C 150 | O | User defined data. |
refund.userDefined2 | C 150 | O | User defined data. |
refund.userDefined3 | C 150 | O | User defined data. |
refund.userDefined4 | C 150 | O | User defined data. |
refund.userDefined5 | C 150 | O | User defined data. |
paymentScheme | C 2 | O | Card brand / payment scheme Refer to Card Scheme List. |
processBy | C 2 | O | Payment process by code Refer to Process By List. |
userDefined1 | C 150 | O | User defined data. |
userDefined2 | C 150 | O | User defined data. |
userDefined3 | C 150 | O | User defined data. |
userDefined4 | C 150 | O | User defined data. |
userDefined5 | C 150 | O | User defined data. |
idempotencyID | C 100 | O | A repeated request with the same idempotencyID will return the same response as the original request |
Updated 10 months ago