alipay.intl.acquiring.common.payCancel
The merchant uses this API to cancel a transaction when the pay API did not return a clear result. For example, when the pay API times out or return UNKNOWN_EXCEPTION
. If payCancel API is called Upon successful, the merchant could safely assume as if the transaction never happened. A cancelled transaction would not be reflected in the settlement report.
Request
Request parameters
Header
No | Name | Description | Type | Length | Required | Remarks | Sample |
1 | version | API version | string | 8 | ME | As per the respective API reference. | 2.0.0 |
2 | function | API interface | string | 128 | ME | According to specifications defined by each business domain. | alipay.intl.function |
3 | clientId | Client ID | string | 32 | ME | Provided by Alipay, used to identify partner and application system. | 211020000000000000044 |
4 | reqTime | Request time | datetime | / | M | DateTime with timezone, which follows the ISO-8601 standard. | 2001-07-04T12:08:56+05:30 |
5 | reqMsgId | Request message ID | string | 64 | ME | Each request will be assigned with a unique ID (uuid). | 1234567asdfasdf1123fda |
6 | reserve | Reserved for future implementation | string | 256 | O | Key/Value | {} |
Body
No | Name | Description | Type | Length | Required | Remarks | Condition | Sample |
1 | merchantId | The merchant id, which identifies the settlement target that Alipay would settle to. | string | 64 | M | 218820000000000000023 | ||
2 | acquirementId | Unique Alipay transaction ID. Note: This field is required when merchantTransId is | string | 64 | CE | Alipay transaction ID, identifying the transaction to be cancelled. | 2015032412007101547201352747 | |
3 | merchantTransId | Unique merchant transaction ID. Note: This field is required when acquirementId is | string | 64 | CE | The merchant transaction ID, identifying the transaction to be canceled. | 51051001000000000002 |
Request sample
{
"request":{
"head":{
"version":"2.0.0",
"function":"alipay.intl.acquiring.common.payCancel",
"clientId":"211020000000000000044",
"reqTime":"2001-07-04T12:08:56+05:30",
"reqMsgId":"1234567asdfasdf1123fda",
"reserve":"{}"
},
"body":{
"merchantId":"218820000000000000023",
"acquirementId":"2015032412007101547201352747"
}
},
"signature":"signature string"
}
Response
Response parameters
Header
No | Name | Description | Type | Length | Required | Remarks | Sample |
1 | version | API version | string | 8 | ME | As per the respective API reference. | 2.0.0 |
2 | function | API interface | string | 128 | ME | According to specifications defined by each business domain. | alipay.intl.function |
3 | clientId | Client ID | string | 32 | ME | Provided by Alipay, used to identify partner and application system. | 211020000000000000044 |
4 | respTime | Response time | datetime | / | M | DateTime with timezone, which follows the ISO-8601 standard. | 2001-07-04T12:08:56+05:30 |
5 | reqMsgId | Request message ID | string | 64 | ME | Each request will be assigned with a unique ID (uuid). | 1234567asdfasdf1123fda |
6 | reserve | Reserved for future implementation | string | 256 | O | Key/Value | {} |
Body
No | Name | Description | Type | Length | Required | Remarks | Sample |
1 | resultInfo | Result information | ResultInfo | / | M | { | |
2 | acquirementId | Unique Alipay transaction ID. Note: This field is required when resultInfo.resultCode is | string | 64 | CE | 2015032412007101547201352747 | |
3 | merchantTransId | Unique merchant transaction ID. Note: This field is required when resultInfo.resultCode is | string | 64 | CE | 51051001000000000002 | |
4 | cancelTime | The cancel time of the transaction | datetime | / | O | DateTime with timezone, which follows the ISO-8601 standard. | 2001-07-04T12:08:56+05:30 |
Response sample
{
"response":{
"head":{
"version":"2.0.0",
"function":"alipay.intl.acquiring.common.payCancel",
"clientId":"211020000000000000044",
"respTime":"2001-07-04T12:08:56+05:30",
"reqMsgId":"1234567asdfasdf1123fda",
"reserve":"{}"
},
"body":{
"resultInfo":{
"resultStatus":"S",
"resultCodeId":"00000000",
"resultCode":"SUCCESS",
"resultMsg":"success"
},
"acquirementId":"2015032412007101547201352747",
"merchantTransId":"51051001000000000002",
"cancelTime":"2001-07-04T12:08:56+05:30"
}
},
"signature":"signature string"
}
Result codes
Functional logic result codes
No | ResultCodeId | ResultCode | ResultStatus | Remarks |
1 | 12002005 | USER_NOT_EXIST | F | User does not exist |
2 | 12002006 | USER_STATUS_ABNORMAL | F | User status is not normal. |
3 | 12005003 | ORDER_STATUS_INVALID | F | Order status is invalid. |
4 | 12005004 | ORDER_NOT_EXIST | F | The order does not exist |
5 | 12006009 | MERCHANT_BALANCE_NOT_ENOUGH | F | The merchant balance is not enough. |
6 | 12002018 | ORDER_CANCEL_WINDOW_EXPIRED | F | Order is not eligible for cancel, cancel time expired. |
Basic result codes
The following global result codes might be returned for all APIs
No | ResultCodeId | ResultCode | ResultStatus | Remarks |
1 | 00000000 | SUCCESS | S | Success |
2 | 00000019 | PROCESS_FAIL | F | General business failure. No retry. |
3 | 00000901 | UNKNOWN_EXCEPTION | U | API failed due to unknown reason. |
4 | 00000004 | PARAM_ILLEGAL | F | Illegal parameters. For example, non-numeric input, invalid date. |
5 | 00000007 | INVALID_SIGNATURE | F | The signature is invalid. |
6 | 00000008 | KEY_NO_FOUND | F | The key is not found. |
7 | 00000013 | NO_INTERFACE_DEF | F | API is not defined. |
8 | 00000014 | API_IS_INVALID | F | API is invalid or not active. |
9 | 00000016 | OAUTH_FAILED | F | oAuth authentication failed. |
10 | 00000021 | ACCESS_DENIED | F | Access denied |
11 | 12014152 | CLIENT_FORBIDDEN_ACCESS_API | F | The client is not authorized to use this API. |
12 | 12014155 | UNKNOWN_CLIENT | F | Unknown client |
13 | 12014156 | INVALID_CLIENT_STATUS | F | Invalid client status |
14 | 00000024 | REQUEST_TRAFFIC_EXCEED_LIMIT | F | Request traffic exceeds the limit. |