Direct Deposit¶
Tip
- All requests are
Postrequests, and the data format isjson
Brief Description¶
- None
Request URL¶
/v1/vexora/checkout
Request Method¶
- Method: POST
- Content-Type: application/json
Header¶
| Header | Required | Type | Description |
|---|---|---|---|
| merchantNo | Yes | String | - |
Body¶
| Parameter Name | Required | Type | Description |
|---|---|---|---|
| sign | Yes | String | Except for the sign, concatenate the remaining fields in alphabetical order to form key1=value1key2=value2, then use the app secret as salt to perform MD5 encryption. The sign should be in lowercase letters. |
| timestamp | Yes | long | Timestamp (e.g., 1715941383720) |
| amount | Yes | String | Payment amount |
| username | yes | String | User Name |
| mobile | yes | String | User's mobile phone number |
| yes | String | email account | |
| channelCode | yes | String | channelCode๏ผEWALLETใVA๏ผ |
| wayCode | no | String | wayCode โข channelCode๏ผEWALLET๏ผwayCode๏ผPALMPAY โข channelCode๏ผVA๏ผwayCode๏ผVA |
| tradeNo | Yes | String | Transaction number (should be unique; suggested format: YYYYMMDDHHMMSS + random number) |
| remark | No | String | Remarks; this field will be returned as is |
| notifyUrl | Yes | String | Asynchronous callback URL (e.g., https://www.abc.com/); if not provided, the system will redirect to the default success page |
| returnUrl | No | String | Redirect page after successful payment |
Request Parameter Example¶
{
"sign": "f5b02d1e945897f194b32d9ef9773a6e",
"timestamp": 1748247671673,
"tradeNo": "pSPqrzJJ3MHkdyzS",
"amount": "500",
"mobile": "15875595997",
"email": "jack@gmail.com",
"username": "jack",
"channelCode": "EWALLET",
"wayCode": "PALMPAY",
"notifyUrl": "http://www.google.com",
"returnUrl": "http://www.google.com",
"remark": "test"
}
Response Result¶
| Parameter Name | Required | Type | Description |
|---|---|---|---|
| msg | Yes | String | Request result (Returning "success" only indicates the request was successful; it should not be used for merchant-side logic) |
| code | Yes | String | Request response code (Returning "0000" only indicates the request was successful; it should not be used for merchant-side logic) |
| 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.payInfo | Yes | String | Payment information, payment link, or QR code information |
| data.status | Yes | String | Transaction results,Merchants can process subsequent workflows based on the returned status in the transaction result. For details, please refer to the status code reference table. |
| data.message | Yes | String | Error description |
| data.remark | Yes | String | Returned content of the request (returned as is) |
Successful Response Example¶
{
"msg": "success",
"code": "0000",
"timestamp": 1748247675703,
"success": true,
"data": {
"tradeNo": "pSPqrzJJ3MHkdyzS",
"platFormTradeNo": "7gwtljttc64lu4e2",
"status": "0015",
"message": "PAYING",
"payInfo": "https://checkout-daily.palmpay.com/h5-checkout/?countryCode=NG&payToken=7559FE189BED3CBFA73F312B2F89A776&orderNo=24250526082115233296&signKey=E7gqlir8PIf0_1lLg0ochAgeaA4rv4dDJlEO3qlvAo8&signSession=24250526082115233296&appId=L240927093144197211431&productType=pay_wallet&businessMode=three_mode&identityType=NEW&callable=true",
"remark": "test"
}
}