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

  1. Fixed to "OC"(OC: Online Card)

2

String

API_CHANNEL

API channel mode

  1. Fixed to "4" (Mobile Banking App)

1

String

TRT_TYPE

Transaction type

  1. Fixed to "40" (40: Request Card Verification)

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-#####)

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

  1. Fixed to “OC” (OC: Online Card)

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