KHQR Guideline
What is ABA KHQR?
📌
Benefits of KHQR
For Customers:
For Merchants:
How to Implement
Notations Convention
Abbreviation | Description |
---|---|
ans | Alphanumeric Special. The Alphanumeric Special alphabet includes ninety-six (96) characters in total and includes the numeric alphabet and punctuation. |
C | Conditional |
CDCVM | Consumer Device Cardholder Verification Method |
CRC | Cyclic Redundancy Check |
ECI | Extended Channel Interpretation |
ID | Identifier of the data object |
ISO | International Standards Organization |
M | Mandatory |
N | Numeric. Values that can be represented by all digits, from "0" to "9". |
QR Code | Quick Response Code |
RFU | Reserved for Future Use |
S | String. Values represented by any precomposed character(s) defined in [Unicode]. |
Var. | Variable |
Data Object
Data Objects Under the Root of a QR Code
Name | ID | Format | Length | Presence | Comment |
---|---|---|---|---|---|
Payload Format Indicator | "00" | N | "02" | M | |
Point of Initial Method | "01" | N | "02" | M | 11 for Static QR (without amount) 12 for Dynamic QR (with amount) |
Merchant Account Information | "30" | N | var. up to "99" | M | Provide By ABA |
Merchant Category Code | "52" | ans | Each var. up to "99" | M | At least one Merchant Account Information data object shall be present. |
Transaction Currency | "53" | N | "03" | M | |
Transaction Amount | "54" | ans | var. up to "13" | C | Absent if the mobile application is to prompt the consumer to enter the transaction amount. Present otherwise. |
Country Code | "58" | ans | "02" | M | |
Merchant Name | "59" | ans | var. up to "25" | M | |
Merchant City | "60" | ans | var. up to "15" | M | |
Additional Data Field Template | "62" | S | var. up to "99" | M | The Additional Data Field Template includes information that may be provided by the Merchant. |
CRC | "63" | ans | "04" | M |
Data Objects for Additional Data Field Template (ID "62")
Name | ID | Format | Length | Presence | Comment |
---|---|---|---|---|---|
Merchant Reference Number | "01" | ans | var. up to "25" | M | |
PayWay Data Field Template | "68" | S | var. up to "99" | M | Provide By ABA |
Example
00020101021130510016abaakhppxxx@abaa01151233333333333330208ABA Bank520478325303840540599.995802KH5913Udom by U.PAK6010PHNOM PENH62530107999999968380010PAYWAY@ABA0103XXX0203YYY0606XYZZZ Z63046DC4
Data Objects Under the Root of a QR Code
Name | Data | ID | Length | Value |
---|---|---|---|---|
Payload Format Indicator | 000201 | 00 | 02 | 01 |
Point of Initiation Method | 010211 | 01 | 02 | 11 |
Merchant Account Information | 30510016abaakhppxxx@abaa01151233333333333330208ABA Bank | 30 | 51 | 0016abaakhppxxx@abaa01151233333333333330208ABA Bank |
Merchant Category Code | 52047832 | 52 | 04 | 7832 |
Transaction Currency | 5303840 | 53 | 03 | 840 |
Transaction Amount | 540599.99 | 54 | 05 | 99.99 |
Country Code | 5802KH | 58 | 02 | KH |
Merchant Name | 5913Udom by U.PAK | 59 | 13 | Udom by U.PAK |
Merchant City | 6010PHNOM PENH | 60 | 10 | PHNOM PENH |
Additional Data Field Template | 62530107999999968380010PAYWAY@ABA0103XXX0203YYY0606XYZZZZ | 62 | 53 | 0107999999968380010PAYWAY@ABA0103XXX0203YYY0606XYZZZZ |
CRC | 63046DC4 | 63 | 04 | 6DC4 |
Data Objects for Additional Data Field Template (ID "62")
Name | Data | ID | Length | Value |
---|---|---|---|---|
Merchant Reference Number | 01079999999 | 01 | 07 | 9999999 |
PayWay Data Field Template | 68380010PAYWAY@ABA0103XXX0203YYY0606XYZZZZ | 68 | 38 | 0010PAYWAY@ABA0103XXX0203YYY0606XYZZZZ |
Payment
Receiving Payment Notification via Webhook
{
"status": 0,
"tran_id": "123456789",
"description": "approved",
"amount": 5,
"original_currency": "USD",
"apv": "",
"datetime": "2021-12-24 12:36:15",
"bank_ref": "",
"payer_account": "*163",
"payment_type": "ABA PAY",
"bank_name": "ABA Bank",
"merchant_ref": "123456"
}
Name | Description |
---|---|
status | "0" represent the success payment |
tran_id | Unique transaction ID that generate by PayWay. |
description | Payment status description in word. |
amount | The amount that has been paid by the customer. |
original_currency | QR currency. It can be KHR or USD. |
apv | Approval code. It has 6 digits length |
datetime | Date and time of the transaction. |
bank_ref | Booking entry reference from core banking. It's only for ABA PAY and KHQR. |
payer_account | Mask account number of the payer. |
payment_type | ABA PAY or KHQR |
bank_name | Issuer bank name |
merchant_ref | Information from QR ID 62.01. |