Dana Subscription
Dana Subscription Cancellation Notification
Asynchronous cancellation notification for DANA subscriptions.
Request URL
URL: notifyUrl (value from create order)
HTTPMethod: POST
EndpointUrl: path of the URL, e.g. URL=https://merchant-domain.com/v2.2/dana/notify, Path=/v2.2/dana/notify
Subscription Cancellation Notification Request (Paylabs -> Merchant)
Header
| Field Name | Type | Value | Required |
|---|---|---|---|
| Content-Type | String(30) | Fixed value "application/json;charset=utf-8" | Yes |
| X-TIMESTAMP | String(29) | Current time, format 2022-09-16T16:58:47.964+07:00 | Yes |
| X-SIGNATURE | String(64) | Signature. For details see Data Signing Rules | Yes |
| X-PARTNER-ID | String(20) | Merchant ID | Yes |
| X-REQUEST-ID | String(64) | Unique ID for each request | Yes |
Body
| Parameter | Type | Required | Remarks |
|---|---|---|---|
| requestId | String(64) | Yes | Unique identifier on every request |
| serviceCode | String(64) | No | Service Code, fixed value: sub.payment |
| merchantId | String(20) | Yes | Merchant ID |
| storeId | String(30) | No | If using branch ID |
| paymentType | String(20) | Yes | Payment Type |
| merchantTradeNo | String(32) | Yes | Merchant subscription ID |
| createTime | String(16) | No | yyyyMMddHHmmss |
| status | String(32) | No | 06 Subscription canceled |
Subscription Cancellation Notification Response (Merchant -> Paylabs)
Header
| Field Name | Type | Value | Required |
|---|---|---|---|
| Content-Type | String(30) | Fixed value "application/json;charset=utf-8" | Yes |
| X-TIMESTAMP | String(29) | Current time, format 2022-09-16T16:58:47.964+07:00 | Yes |
| X-SIGNATURE | String(64) | Signature. For details see Data Signing Rules | Yes |
| X-PARTNER-ID | String(20) | Merchant ID | Yes |
| X-REQUEST-ID | String(64) | Unique ID for each request | Yes |
Body
| Parameter | Type | Required | Remarks |
|---|---|---|---|
| requestId | String(64) | Yes | Unique identifier on every request |
| errCode | String(32) | Yes | 0 means success, otherwise see Error Code |
| errCodeDes | String(128) | No | Error description |
| merchantId | String(20) | Yes | Merchant ID |
| storeId | String(30) | No | If using branch ID |
Example
Request
POST URL provided by Merchant
# HTTP Header
Content-Type: application/json;charset=utf-8
X-TIMESTAMP: 2022-09-16T16:58:47.964+07:00
X-SIGNATURE: xxxxxxxxx
X-PARTNER-ID: 010001
X-REQUEST-ID: xxxxxxxxxxxxxxxxxxxxxxxx
# HTTP Body
{
"merchantId": "010001",
"requestId": "N010001PY-1761273693.31210331761643480131",
"serviceCode": "sub.remove",
"paymentType": "StaticDanaSub",
"merchantSubId": "PY-1761273693.3121033"
}Response
POST URL provided by Merchant
# HTTP Header
Content-Type: application/json;charset=utf-8
X-TIMESTAMP: 2022-09-16T16:58:47.964+07:00
X-SIGNATURE: xxxxxxxxx
X-PARTNER-ID: 010001
X-REQUEST-ID: xxxxxxxxxxxxxxxxxxxxxxxx
# HTTP Body
{
"merchantId":"010001",
"requestId":"N01029020230619290000003911687350380290",
"errCode":"0"
}