3. Message specification
@Payon development group
3.1 Request Card Verification 3.1.1 Request message
Key | Value | Length | Data Format |
CARD_TYPE | Card type
| 2 | String |
API_CHANNEL | API channel mode
| 1 | String |
TRT_TYPE | Transaction type
| 2 | String |
TERM_ID | Terminal ID given by PayOn
| 10 | String |
TX_ID | Unique Transaction ID 1. Generate unique value to avoid duplicate (ex: ddMMyyyy-#####) | min 6 max 16 | String |
REQ_DATE | Top-up request date 1. Format: “ddMMyyyyHHmmss” | 14 | String |
TOPUP_CODE | Top-up Code 1. “01”: Top-up by phone number 2. “02”: Top-up by card number 3. “03”: Top-up by user id | 2 | String |
USER_ID | Customer's PayOn online(Phone Number, Card No, User ID) 1. “023987477”: Test phone number 2. “1010499900000048”: Test card number 3. “ appdemouser@payon.com.kh ”: Test User ID | max 50 | Encrypted Hex String |
CURRENCY | Currency of the amount to top-up 1. “D”: USD 2. “K”: KHR | 1 | String |
TX_MAC | Message authentication code 1. MAC for “term_id + tx_id + req_date” | 16 | Hex String |
3.1.2 Response message
Key | Value | Length | Data format |
RESULT_CODE | Top-up result code 1. “0000”: success 2. “1001” ~ “9999”: Fail (Refer to error code list) | 4 | String |
RESULT_MESSAGE | Top-up result message | Max 100 | String |
MEMBER_NAME | Terminal ID given by PayOn | 10 | String |
CARD_NO | Customer's PayOn online card number | Encrypted hex string | |
CURRENCY | Currency of the amount to top-up 1. “D”: USD 2. “K”: KHR | 1 | String |
TRT_TYPE | Transaction type 1. “41”: Card verification | 2 | String |
3.2 Request Online Top-up 3.2.1 Request message
Key | Value | Length | Data format |
CARD_TYPE | Card type
| 2 | String |
API_CHANNEL | API channel mode 1. Fixed to “4” (Mobile Banking App) | 1 | String |
TRT_TYPE | Transaction type 1. Fixed to “30” (30: Request Top-up) | 2 | String |
TERM_ID | Terminal ID given by PayOn 1. “OT03000001”: Test Terminal ID for PPC Bank Mobile Banking App | 10 | String |
TX_ID | Unique Transaction ID 1. Generate unique value to avoid duplicate (ex: ddMMyyyy-#####) 2. Use the same tx_id of card verification request | min 6 max 16 | String |
REQ_DATE | Top-up request date 1. Format: “ddMMyyyyHHmmss” 2. Use the same request date of card verification request | 14 | String |
CARD_NO | Customer's PayOn online card number 1. “1010499900000048”: Test card number 2. Use card_no of card verification response | 16 | Encrypted Hex String |
AMOUNT | Amount to top-up 1. Do not use decimal point. | min 1 max 8 | Encrypted Hex String |
CURRENCY | Currency of the amount to top-up 1. “D”: USD 2. “K”: KHR | 1 | String |
BANK_CODE | Bank code | 6 | String |
CUSTOMER_ACCOUNT | Customer account number | Max 2 | String |
TX_MAC | Message authentication code 1. MAC for “term_id + tx_id + req_date” 2. Use the same tx_mac of card verification request | 16 | Hex String |
3.2.2 Response message
Key | Value | Length | Data Format |
RESULT_CODE | Top-up result code 1. “0000”: success 2. “1001” ~ “9999”: Fail (Refer to error code list) | 4 | String |
RESULT_MESSAGE | Top-up result message | Max 100 | String |
TERM_ID | Terminal ID given by PayOn | 10 | String |
TX_ID | Unique Transaction ID | min 6 max 16 | String |
REQ_DATE | Top-up request date | 14 | String |
CARD_NO | Customer's PayOn online card number | 16 | String |
AMOUNT | Top-up amount | min 1 max 8 | String |
APPROVAL_DATE | Top-up approval date and time 1. Format: | 14 | String |
APPROVAL_NO | Top-up approval number | 16 | Encrypted Hex String |
TX_MAC | Message authentication code 1. MAC for “term_id | 16 | Hex String |
Last updated