go to Evonet

Cancel API

通过 POST /payment/{merchantTransID}/cancel 取消未捕获的 authorized 或 pending 交易。

请求示例:

{
    "merchantTransInfo": {
        "merchantTransID": "cancel_25072",
        "merchantTransTime": "2025-07-10T09:30:35+08:00"
    },
    "webhook": "https://webhook.merchant.com"
}

响应示例:

{
    "cancel": {
        "evoTransInfo": {
            "evoTransID": "pay_2507211639460001000092856749",
            "evoTransTime": "2025-07-21T08:39:46Z",
            "retrievalReferenceNum": "520216131055",
            "traceNum": "032162"
        },
        "merchantTransInfo": {
            "merchantTransID": "cancel_25072",
            "merchantTransTime": "2025-07-21T16:39:45+08:00"
        },
        "pspTransInfo": {
            "retrievalReferenceNum": "520216131055"
        },
        "status": "cancel_pending"
    },
    "payment": {
        "evoTransInfo": {
            "evoTransID": "pay_2507211638550001000081813845",
            "evoTransTime": "2025-07-21T08:38:55Z",
            "retrievalReferenceNum": "520216131003",
            "traceNum": "131003"
        },
        "merchantTransInfo": {
            "merchantOrderReference": "mc-250528",
            "merchantTransID": "pay_2507211638550001000081813845",
            "merchantTransTime": "2025-07-09T11:18:00+08:00"
        },
        "pspTransInfo": {
            "retrievalReferenceNum": "520216131003"
        },
        "status": "cancel_pending",
        "transAmount": {
            "currency": "HKD",
            "value": "100.00"
        }
    },
    "paymentMethod": {
        "card": {
            "first6No": "489533",
            "fundingType": "credit",
            "issuingCountry": "USA",
            "last4No": "1119",
            "paymentBrand": "Visa"
        }
    },
    "result": {
        "code": "S0000",
        "message": "Success"
    }
}

处理逻辑

响应中,需首先查看 result.code

  • 非 S 开头:取消失败
  • S 开头(如 S0000):查询成功,需要查看 cancel.status
    • cancel_pending:需接收 eventCode: "Cancel" 的异步通知,通过异步通知中的 cancel.status 字段确定取消结果

关键字段:

字段名类型描述注意事项
cancel.statusstring取消状态
result.codestring应答码S 开头表示查询成功

更多参数信息请参考:payment API 中 POST cancel 部分。