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>S</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

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