Checkout¶
Malaysia APIs
Introduction 路 Response Code 路 Checkout 路 Disbursement 路 Check Deposit Status 路 Check Disbursement Status 路 Disbursement Bank Codes 路 Deposit WayCode 路 Check Balance 路 Webhook
Tip
- All requests are
Postrequests, and the data format isjson
Brief Description¶
- Use this API to create a Malaysia collection transaction.
Request URL¶
/v1/vexora/checkout
Request Method¶
- Method: POST
- Content-Type: application/json
Header¶
| Header | Required | Type | Description |
|---|---|---|---|
| merchantNo | Yes | String | Merchant number assigned by Vexora. |
Body¶
| Parameter Name | Required | Type | Description |
|---|---|---|---|
| sign | Yes | String | The sign field is generated by sorting all fields except sign in alphabetical order and concatenating them as key1=value1key2=value2. Use app secret as salt for MD5 encryption. The sign field should be in lowercase. |
| timestamp | Yes | String | Timestamp (e.g., 1715941383720) |
| tradeNo | Yes | String | Transaction number (must be unique, recommended format: YYYYMMDDHHMMSS + random digits; max 32 characters) |
| amount | Yes | String | Transaction amount, supports up to 2 decimal places, unit: Malaysian Ringgit (MYR). |
| mobile | Yes | String | Payer's real mobile number (format: 10-11 digits starting with 01). |
| firstname | Yes | String | Payer's actual first name. Note: The mobile number and payer information in the request must match the actual payer information. |
| lastname | Yes | String | Payer's actual last name. Note: The mobile number and payer information in the request must match the actual payer information. |
| Yes | String | Payer's email address | |
| channelCode | Yes | String | Payment method (see WayCode appendix for details) |
| wayCode | Yes | String | Payment channel (see WayCode appendix for details) |
| bankCode | Yes | String | Collection bank code (see WayCode appendix for details). |
| notifyUrl | Yes | String | Webhook URL for asynchronous transaction notifications. |
| returnUrl | Yes | String | URL to redirect the customer after successful authorization |
| remark | No | String | Merchant remark. This value is returned as submitted when available. |
Request Parameter Example¶
{
"sign": "363b4674a1c1772e8a50295dc19d6727",
"timestamp": "1732988442913",
"tradeNo": "MY202605140001",
"amount": "100.00",
"mobile": "01234567890",
"firstname": "Amir",
"lastname": "Rahman",
"email": "amir.rahman@example.com",
"channelCode": "NET_BANKING",
"wayCode": "BANK_TRANSFER",
"bankCode": "0013",
"notifyUrl": "https://merchant.example.com/vexora/payment-notify",
"returnUrl": "https://merchant.example.com/payment/result",
"remark": "Order MY202605140001"
}
Response Result¶
| Parameter Name | Required | Type | Description |
|---|---|---|---|
| msg | Yes | String | API request message. A value such as success only indicates that the API request was processed. |
| code | Yes | String | API request code. 0000 only indicates that the API request was successful. Use data.status to determine the transaction result. |
| timestamp | Yes | String | Transaction time |
| success | Yes | String | Transaction result |
| data | Yes | Object | Response object |
| data.tradeNo | Yes | String | Merchant transaction number returned |
| data.platFormTradeNo | Yes | String | Unique vexora transaction number |
| data.status | Yes | String | Transaction status. Use this value to determine the final business result. For details, refer to the response code section. |
| data.message | Yes | String | Error description |
| data.remark | Yes | String | Merchant remark returned as submitted. |