Test endpoint: https://mpqr-test.eftpos.com.sg/
Every API request requires the following HTTP headers to be included.
Header Key | Description |
---|---|
Authorization | partner_id:base64_encoded_hmac_signature |
X-Request-Date | the date of the request as per the format 'YYYY-MM-DDTHH:MM:SS.SSS' |
Content-Type | the MIME type of the body of the request when present. Eg: "application/json" |
Accept | the MIME type of the body of the response will present in Payment and Inquiry. |
Authenticate your account when using the API by computing a HMAC signature. The signature is obtained in 3 steps:
Initialize the payment transaction.
REQUEST BODY SCHEMA: application/json
Field Id | Type | Required | Description |
---|---|---|---|
merchant_id | string | Mandatory | Provided by ASCAN. |
store_id | string | Mandatory | Provided by ASCAN. |
wallet_name | string | Mandatory | Provided by ASCAN. |
gateway | string | Optional | Provided by ASCAN. |
gateway_wallet_name | string | Optional | Provided by ASCAN. |
transaction_id | string | Mandatory | It is an unique transaction reference. |
orderId | string | Mandatory | It is an unique order reference. |
currency | string | Mandatory | Like 'SGD', 'USD' |
amount | integer | Mandatory | Sale amount with no decimal point. |
redirectURL | string | Mandatory | Return redirect URL for merchant website. |
notificationURL | string | Optional | Notification URL for merchant |
{ | ||
"merchant_id": "600054000000384", | ||
"store_id": "60006371" | ||
"wallet_name": "ATOME" | ||
"transaction_id": "1657878693315" | ||
"orderId": "ORD1657878693315" | ||
"currency": "SGD" | ||
"amount": "5000" | ||
"redirectURL": "http://mpqr-test.eftpos.com.sg:3000/callback" | ||
"notificationURL": "https://mpqr-test.eftpos.com.sg/app/api/ecommerce/v1/otc/atome/webhook" | ||
} |
{ | ||
"merchant_id": "600054000000384" | ||
"store_id": "60006371" | ||
"wallet_name": "ATOME" | ||
"gateway": "false" | ||
"gateway_wallet_name": null | ||
"transaction_id": "1657878693315" | ||
"orderId": "ORD1657878693315" | ||
"currency": "SGD" | ||
"amount": "5000" | ||
"partnerTxnReference": null | ||
"redirectUrl": null | ||
"qrCode": "https://app.apaylater.net/qr/05146751c07a41b5b25a6a5976f3b08f" | ||
"htmlData": null | ||
} |
Payment Inquiry.
REQUEST BODY SCHEMA: application/json
Field Id | Type | Required | Description |
---|---|---|---|
merchant_id | string | Mandatory | |
store_id | string | Mandatory | |
transaction_id | string | Mandatory | Original Transaction reference |
{ | ||
"merchant_id": "600054000000384" | ||
"store_id": "60006371" | ||
"transaction_id": "1657878693315" | ||
} |
{ | ||
"merchant_id": "600054000000384" | ||
"store_id": "60006371" | ||
"wallet_name": "ATOME" | ||
"gateway": "false" | ||
"gateway_wallet_name": null | ||
"transaction_id": "1657878693315" | ||
"orderId": "ORD1657878693315" | ||
"currency": "SGD" | ||
"amount": "5000" | ||
"partnerTxnReference": null | ||
"status": "PROCESSING" | ||
} |
Online payment acquirer callback (Front channel means browser redirect).
REQUEST PATH PARAMETERS:
Field Id | Type | Description |
---|---|---|
wallet_name | string | Should send wallet name in Path value |
txn_ref | string | Original Transaction reference |
{ | ||
"error": { "error_code": "Bad_Request", "error_description": "string" }, |
||
"status": "F" | ||
} |
Online payment acquirer webhook (Back channel means acquirer post web hook message to paypoint).
REQUEST PATH PARAMETERS:
Field Id | Type | Description |
---|---|---|
wallet_name | string | Should send wallet name in Path value |
{ | ||
"error": { "error_code": "Bad_Request", "error_description": "string" }, |
||
"status": "F" | ||
} |