取消支付
当支付结果长时间未返回,或者授权完成后要取消支付授权时,使用此接口取消该支付。
在调用此接口之前需要注意几点:
要取消支付,必须提供以下参数之一:
- paymentId: 要取消的支付请求的原始支付 ID,由 Antom 在商户发起原始支付时生成。
- paymentRequestId:要取消的支付请求的原始支付请求 ID。
入参
paymentId String
Antom 为识别支付而分配的支付 ID。paymentId 和 paymentRequestId 不能同时为null
。paymentId 和 paymentRequestId 之间存在一对一对应关系。
更多信息:
- 最大长度:64 字符
paymentRequestId String
商户为识别支付请求而分配的专属 ID。paymentRequestId 和 paymentId 不能同时为null
。如果同时提供了 paymentRequestId 和 paymentId,paymentId 优先。
更多信息:
- 最大长度:64 字符
出参
result Result REQUIRED
请求结果包含状态和错误代码等信息。
paymentId String
Antom 为识别支付而分配的支付 ID。
更多信息:
- 最大长度:64 字符
paymentRequestId String
商家为标识支付请求分配的专属 ID。
更多信息:
- 最大长度:64 字符
cancelTime Datetime
支付取消过程的实际完成时间,即支付取消成功时的日期和时间。此参数仅在取消成功时返回。
更多信息:
- 值遵循 ISO 8601 标准格式。例如,“2019-11-27T12:01:01+08:00”。
API Explorer
请求
URL
请求体
响应
响应体
结果处理逻辑
对于不同的请求结果,需要执行不同的操作。详细信息如下:
- 如果 result.resultStatus 的值为
S
,取消操作成功。 - 如果 result.resultStatus 的值为
F
,取消操作失败。查看返回的错误代码并确定进一步的操作。 - 如果 result.resultStatus 的值为
U
,取消结果未知。使用相同的请求参数重试取消请求。 - 如果没有收到响应,使用相同的请求参数重试取消请求。
结果码
结果码 | 值 | 结果码信息 | 行动建议 |
---|---|---|---|
SUCCESS | S | 成功 | 订单已被取消,商户需要将收据状态设置为取消。 |
CANCEL_WINDOW_EXCEED | F | 取消日期超出了支持取消的期限,该期限在合同中约定。 | 交易无法再取消,需针对交易发起退款。 |
CLIENT_INVALID | F | 客户端无效。 | 请检查 clientId 是否正确。 |
ORDER_NOT_EXIST | F | 订单不存在。 | 请检查 paymentId 是否正确。 |
ORDER_STATUS_INVALID | F | 由于订单状态无效,交易无法进一步处理。 | 检查交易的订单状态,或联系 Antom 技术支持获取详细原因。 |
MEDIA_TYPE_NOT_ACCEPTABLE | F | 服务器不支持客户端可接受的媒体类型。 |
请检查媒体类型是否正确。 |
METHOD_NOT_SUPPORTED | F | 服务器不支持请求的 HTTP 方法。 | 请检查 HTTP 方法是否正确。 |
MERCHANT_BALANCE_NOT_ENOUGH | F | 商户余额不足。 | 商户余额充足后,请再次调用接口。 |