Merchant API

3.1.1 Request

Method

API Name

URI

POST

Pymt

/Payment/Pymt

Field Name

Data Type

Size

M/O

Description & Remarks

MerchantNo

String

16

M

Merchant no assigned by the system

ReqDate

String

14

M

Client request date when calling the API. Format: yyyyMMddHHmmss.

OrderId

String

25

M

Unique Merchant transaction number / Order Id

TrxnAmount

 

String

10

M

Transaction amount. Up to 2 decimals and no thousand separators.  Example: “10”, “10.5”, “10.50”

TrxnDesc

String

500

M

Description of the transaction

PymtMethodSelect

String

50

O

Pre-select a Payment Method. Only selected payment method will be displayed on the payment page.

 

Values:

i.     EMPTY (Left the value empty). All subscribed payment methods will be displayed and choosable by the buyer.

ii.    “Card” – only Credit / Debit card payment

iii.   “FPX” – All FPX including B2B and B2C

iv.  “FPX B2C” – only FPX B2C

v.   “FPX B2B” – only FPX B2B

vi.  “e-Wallet” – only e-Wallet

vii. “DuitNow” – only DuitNow

 

Multiple payment methods should be seperated by commas.

Eg: Card, FPX

CustId

String

50

O

Merchant’s online buyer id. It must unique for each online buyer. It be used as an identifier to save and retrieve credit card info.

CustName

String

300

M

Merchant’s online buyer name

CustEmail

String

300

M

Merchant’s online buyer email. Require to supply to avoid transaction getting declined.

CustMobile

String

20

O

Merchant’s online buyer phone no.

NOTE:
It is required if eWallet payment is subscribed.

CustIdentityNo

String

40

O

Customer identification number. For payer’s identity verification. Not supported: Slash (/), Ampersand (&) and Apostrophe (‘).

 

For FPX payment method.

Signature

 

String

M

Calculated hash by concatenating all the values of the fields and follow the list order.

 

Legend:

M: Mandatory field

O: Optional field, value can be empty but parameter must exist

 

Example

<HTML>

<BODY>

<FORM method=”post” action=”[Base URL]/Payment/Pymt”>

<INPUT type=” hidden ” name=”MerchantNo” value=”1000000000000001″>

<INPUT type=”hidden” name=” ReqDate” value=”20210101153020″>

<INPUT type=”hidden” name=”OrderId” value=”M123456789″>

<INPUT type=”hidden” name=”TrxnAmount” value=”10.5″>

<INPUT type=”hidden” name=”TrxnDesc” value=”Transaction description here”>

<INPUT type=”hidden” name=” PymtMethodSelect” value=””>

<INPUT type=”hidden” name=”CustId” value=”1993023323″>

<INPUT type=”hidden” name=”CustName” value=”Customer Name here”>

<INPUT type=”hidden” name=”CustEmail” value=”abc@gmail.com”>

<INPUT type=”hidden” name=”CustMobile” value=”0121234567”>

<INPUT type=”hidden” name=”CustIdentityNo” value=”800511025689”>

<INPUT type=”hidden” name=”Signature” value=”[Calculated hash]”

<INPUT type=”submit” value=”Submit” name=”Submit”>

</FORM>

</BODY>

</HTML>